dejuanZ 2019-11-15
全文共2653字,预计学习时长10分钟
图源:Pexels
Anaconda是一个供数据科学家、IT专家,和商业领袖使用的数据科学平台,是Python、R语言等的一个发行版。针对数据科学,它有超过300个软件包,因此它迅速攀升为最好的数据平台之一。本篇导修将会探讨如何运用Anaconda帮助Python编程。以下是本文要探讨的主题:
○ Python基础
○ 数据分析
○ 机器学习和人工智能
*CDH:Cloudera’s Distribution Including Apache Hadoop.
Cloudera包括Apache Hadoop的发行版本。
Anaconda介绍
Anaconda是Python和R的开源发行版本。它能够用于数据科学,机器学习,深度学习等领域。它能够让用户接触到超过300个数据库,因此对于任何程序员而言,Anaconda都是数据科学研究的上选。
Anaconda能够帮助简化软件包的管理和部署,它还匹配了多种工具,可以使用各种机器学习和人工智能算法轻松地从不同的来源收集数据。Anaconda还可以使用户获得一个易于管理的环境设置——用户只需点击按钮就可以部署任何项目。
相信你们对Anaconda已经有了一个基本概念,接下来了解如何安装它,并设置一个能够在系统上工作的环境。
安装和启动
想要安装Anaconda,可以进入这个网站。
下载页面
选择一个适合的版本然后点击下载。完成下载后,打开启动页面。
Anaconda启动
遵循启动页中的指令,记得点击添加Anaconda到路径环境变量里。安装完成后,你会看到一个和下图一样的窗口:
安装完成
安装完成后,打开Anaconda prompt并输入jupyternotebook*。
*Jupyter Notebook: 是一个基于Web的交互式计算环境,用于创建jupyter notebook文档。
Anaconda prompt
你会看到一个和下图一样的窗口:
Jupyter Notebook文件查找器
现在,已经知道如何将anaconda应用到python里了,继续研究如何在anaconda里为不同的项目导入数据库。
导入Python库至Anaconda
打开Anaconda prompt,检查数据库是否已经安装。
检查NumPy*是否安装
*NumPy是Python语言的一个扩展程序库,支持高端大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
因为没有名为numpy的模块存在,我们要运行以下指令来安装numpy。
安装NumPy中
安装完成,就会出现这样一个窗口:
NumPy安装完成
安装完一个数据库后,尽量再次导入模块以验证安装是否成功。
导入NumPy
如上图所示,这一步没有出现错误。这就是在Anaconda中安装不同数据库的方法。
Anaconda Navigator
Anaconda Navigator
Anaconda Navigator是Anaconda发行版附带的桌面图形用户界面(GUI),它能够让用户在不使用命令行的情况下启动应用程序,并管理conda软件包和环境。
Python基础
变量和数据类型
变量和数据类型是所有编程语言的基本组成部分。基于不同数据的属性,Python共有六种数据类型。其中,列表(list),字典(dictionary),集合(set),还有元组(tuple)是Python中的集合数据类型。
下面是变量和数据类型在Python中应用的例子:
#variable declaration
name = "Edureka"
f = 1991
print("python wasfounded in" , f)
#data types
a = [1,2,3,4,5,6,7]
b = {1 : 'edureka' , 2: 'python'}
c = (1,2,3,4,5)
d = {1,2,3,4,5}
print("the listis" , a)
print("thedictionary is" ,b)
print("the tupleis" , c)
print("the set is" , d)
操作符(Operators)
Python 中的操作符用于值或变量之间的操作。Python中有七种类型的操作符:
下面是在Python中使用操作符的一个例子:
a = 10
b = 15
#arithmetic operator
print(a + b)
print(a - b)
print(a * b)
#assignment operator
a += 10
print(a)
#comparison operator
#a != 10
#b == a
#logical operator
a > b and a > 10
#this will return true if both the statements are true.
控制语句
诸如使用if, else, break和continue等的语句被用作控制语句,以获得对执行过程的控制,从而取得最佳结果。可以在 Python 的循环中使用这些语句来控制结果。下面的示例演示如何使用控制(control)条件(conditional)语句。
name = 'edureka'
for i in name:
if i == 'a':
break
else:
print(i)
函数
Python函数以一种高效的方式使代码的重复使用性提高,为问题语句编写逻辑,并运行一些参数以获得最佳解决方案。下面是如何在python中使用函数的示例。
deffunc(a):
return a ** a
res = func(10)
print(res)
类以及对象
因为Python支持面向对象的程序设计,所以也可以使用类和对象。下面是如何使用python中的类和对象的示例。
classParent:
deffunc(self):
print('this is parent')
classChild(Parent):
deffunc1(self):
print('this is child')
ob = new Child()
ob.func()
以上Python的一些基本概念。接下来,看看Anaconda更大的软件包支持,我们可以从许多库中获得资料。现在来探究如何使用 python anaconda进行数据分析。
分析
数据挖掘和分析工作流
上面是数据分析中涉及的某些步骤。来看看在anaconda中数据分析是如何进行数据分析的,以及其中可以使用的各种库。
收集数据
数据的收集就像在程序中加载 CSV 文件一样简单。可以利用相关数据来分析数据中的特定实例或条目。下面是加载程序中CSV数据的代码:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.read_csv('filename.csv')
print(df.head(5))
前五行数据组
交叉分析
在加载程序中的数据集之后,还需要对数据进行一些更改过滤,即消除空值和可能造成分析不确定性的不必要字段。
下面是如何根据需求筛选数据的示例:
print(df.isnull().sum())
#this will give the sum of all the null values in thedataset.
df1 = df.dropna(axis=0 , how= 'any')
#this will drop rows with null values
找到每列空值的总数
当然也可以删除空值。
删除空值的所在行
箱线图(box plot)
sns.boxplot(x=df['Salary Range From'])
sns.boxplot(x=df['Salary Range To'])
薪资范围箱线图
薪资范围箱线图
散点图(scatter plot)
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(16,8))
ax.scatter(df['Salary Range From'] , df['Salary Range To'])
ax.set_xlabel('Salary Range From')
ax.set_ylabel('Salary Range TO')
plt.show()
薪资范围散点图
可视化
一旦根据需求改变了数据,就有必要分析这些数据,方式之一就是将结果可视化。更好的可视化表示有助于对数据投影进行最优分析。
下面是一个数据可视化的例子:
全职&兼职工作者的柱状图
全职&兼职工作者及工资结算方式柱状图
薪资范围直方图
薪资范围直方图
import matplotlib.pyplot as plt
fig = plt.figure(figsize = (10,10))
ax = fig.gca()
sns.heatmap(df1.corr(), annot=True, fmt=".2f")
plt.title("Correlation",fontsize=5)
plt.show()
用matplotlib绘制的热图
分析
完成可视化后,可以借助各种图表来进行分析。假设我们正在处理作业数据,通过查看某个区域中特定作业的可视化表示,便可以确定特定域中作业的数量。
根据上文的分析,可以假设下列结果:
如果还有其他问题,在评论区里踊跃发言哟,小芯将第一时间与你联系。
留言点赞关注
我们一起分享AI学习与发展的干货
如转载,请后台留言,遵守转载规范