400-616-5551

您所在位置: 首页> 学习课程> python培训 | python实战:Python数据分析与可视化

python培训 | python实战:Python数据分析与可视化

发布百知教育 来源:学习课程 2019-11-18

Python是一个很适合与数据打交道的语言,你可以用它来做爬虫,做表格,做折线图,数据清洗,大数据,量化交易,做分析工具用来炒股,图形AI识别。


一、初识pandas

pandas是进行数据分析的库,有很强大的数据处理能力


pandas基于Numpy的数据分析工具(Numpy我会在进阶篇写的)


她没用Python已有的数据结构和其他库的数据结构,而是自己设计了两种数据结构:Series和Dataframe


用他们两个来处理表格型的数据非常方便。


Series数组

Series是一种一维的带标签数组对象


Series数组对象由两部分构成:


  • 值(value):一维数组的各元素值,是一个ndarray(会在Numpy篇里讲)类型数据。

  • 索引(index):与一维数组值一一对应的标签。利用索引,我们可非常方便在Series数组中进行取值。



使用列表创建Series


python培训


python培训


创建Series数据结构时,如果没有指定标签,那就从0开始递增。


也可以一开始给指定index:


python培训

python培训


这里就可以利用索引取值出来了:


a[0]或者a['b']


从NumPy创建Series(这里必须是传入的一维数组对象)


python培训



使用字典创建series


python培训


python培训


series数组常用属性


Series数组的属性与numpy数组属性很是类似,如下表所示


python培训


DataFrame数组

series是一维的,dataframe是二维的,和Excel表格相似,其数据的呈现方式类似于Excel这种二维表结构。


相比于Series数组,DataFrame可以存放多维数据,所以DataFrame不仅仅有索引,还有列名。


通过字典创建


python培训


python培训


通过二维数组创建


python培训


python培训


通过列表创建


通过列表创建DataFrame数组时,列表的每一个元素必须是字典,这样,字典的键将作为列名。


python培训


通过功能函数创建


我们还可以通过诸如from_dict()、from_records()这类的功能函数来创建DataFrame数组,以from_dict()为例:


python培训

如果需要让字典的键作为索引,重新指定列名,可以传入orient='index'参数,然后重新传入列名。

DataFrame数组常用属性

DataFrame数组的属性与Series数据几乎一样,只是多了一个保存列名信息的columns属性,参看上面表格中的Series属性就行了。

DataFrame元素索引

创建时指定了index 和 columns标签,这是为了便于通过标签取得元素。与列表类似,dataframe也可以选取一个或多个元素。

输出行列索引和元素值:

dataframe.columns

dtataframe.index

dataframe.values

动手写一遍代码


python培训


22.png


按列或行索引


在dataframe中,通过dataframe[列名]或dataframe.列名的方式就可以取得对应的一列数据。


python培训


更新DataFrame


python培训


二、数据运算


在进行数据运算的时候,pandas可以让数据自动对齐。参与运算的两个数据结构的索引顺序不一致,但是只要索引项一致,就可以自动对齐,并进行运算,如果索引项只在一个数据结构中出现,那么该元素无法进行对齐和运算,用NaN填充。


series之间的运算


python培训


python培训


DataFrame之间的运算


对齐规则相同,但是列和行都需要对齐


python培训


列和行标签相同才会做运算。否则NaN填充。

pandas里有算术函数可以进行常规运算:

add()//加

sub()//减

mul()//乘

div()//除

s1.add(s2)

series和dataframe之间的运算


他们两种不同的数据结构进行数学运算时,series中的元素会与dataframe中具有相同列索引的元素进行数学运算:


python培训


注意columns和index是对应的,如果一个索引项只存在于一个数据结构中,那么运算结果中会为该索引生成一列,只不过都是NaN。


numpy通用函数


pandas可以用numpy函数拓展,操作series和dataframe,比如sqrt,square函数,这是开方和平方的。


python培训


三、文件读取和数据选取


pandas对大量的Excel表格进行操作,pandas可以对Excel,csv,数据库文件等等进行数据读取。

read_excel()和read_csv(),用info函数去查看数据的整体信息。


python培训


数据选取


使用loc和iloc选取数据

df.loc[]只能使用标签索引,不能使用整数索引,通过便签索引切边进行筛选时,前闭后闭。

df.iloc[]只能使用整数索引,不能使用标签索引,通过整数索引切边进行筛选时,前闭后开。


df.ix[]既可以通过整数索引进行数据选取,也可以通过标签索引进行数据选取,换句话说,df.ix[]是df.loc[]和df.iloc[]的功能集合,且在同义词选取中,可以同时使用整数索引和标签索引。


Python培训:http://www.baizhiedu.com/python2019



上一篇:python培训 | Python创意编程,实现傅里叶级数可视化

下一篇:应届生去公司找个Java程序员的职位需要什么技能?

相关推荐

www.baizhiedu.com

有位老师想和您聊一聊

关闭

立即申请