avatar

目录
python之pandas库引用

1、pandas库介绍

Pandas是Python第三方库,提供高性能易用数据类型和分析工具。通过import pandas as pd引用。
Pandas基于NumPy实现,常与NumPy和Matplotlib一同使用。
Pandas有两个数据类型:Series, DataFrame,基于上述数据类型进行各类操作,包括基本操作、运算操作、特征类操作、关联类操作。

2、pandas库的Series类型

Series是一维带“标签”数组,Series基本操作类似ndarray和字典,根据索引对齐:index –> data
Series类型由一组数据及与之相关的数据索引组成:
index_0    data_a
index_1    data_b
index_2    data_c
……
1sQ4X9.jpg
此处index=作为第二个参数,可以省略。

(一)Series类型创建

Series类型可以由如下类型创建:
● Python列表,index与列表元素个数一致
● 标量值,index表达Series类型的尺寸
pd.Series(25,index=['a','b','c']),此处不能省略index
1sNqhR.jpg
● Python字典,键值对中的“键”是索引,index从字典中进行选择操作
pd.Series({'a':9,'b':8,'c':7},index=['a','b','c']) ,index从字典中进行选择操作
1sNBX8.jpg
● ndarray,索引和数据都可以通过ndarray类型创建
pd.Series(np.arange(5),index=np.arange(9,4,-1))
1stasU.jpg
● 其他函数,range()函数等

(二)Series类型基本操作

● Series类型包括index和values两部分
1sUX5j.jpg
● Series类型的操作类似ndarray类型
①索引方法相同,采用[]
②NumPy中运算和操作可用于Series类型
③可以通过自定义索引的列表进行切片
④ 可以通过自动索引进行切片,如果存在自定义索引,则一同被切片
● Series类型的操作类似Python字典类型
①通过自定义索引访问
②保留字in操作
③使用.get()方法
1saxTe.jpg

(三)Series类型对齐操作

Series + Series,Series类型在运算中会自动对齐不同索引的数据
1sdtk4.jpg

(四)Series类型name属性

Series对象和索引都可以有一个名字,存储在属性.name
1sdzuV.jpg
Series对象可以随时修改并即刻生效

3、pandas库的DataFrame类型

DataFrame是二维带“标签”数组,DataFrame基本操作类似Series,依据行列索引
DataFrame类型由共用相同索引的一组列组成:
1s0Gi4.jpg
DataFrame是一个表格型的数据类型,每列值类型可以不同;
DataFrame既有行索引、也有列索引;
DataFrame常用于表达二维数据,但可以表达多维数据。
DataFrame类型可以由如下类型创建:
● 二维ndarray对象
1sB1Xt.jpg
● 由一维ndarray、列表、字典、元组或Series构成的字典
从一维ndarray对象字典创建:
1sDD8H.jpg
从列表类型的字典创建:
1srAIO.jpg
● Series类型
● 其他的DataFrame类型

3、pandas库的数据类型操作

如何改变Series和DataFrame对象?
①增加或重排:重新索引
.reindex()能够改变或重排Series和DataFrame索引
.reindex(index=None, columns=None, …)的参数
1srv0P.jpg
SeriesDataFrame的索引是Index类型
Index对象是不可修改类型
索引类型常用方法:
1symDI.jpg
②删除:drop
.drop()能够删除Series和DataFrame指定行或列索引

3、pandas库的数据类型计算

(一)算数运算法则

算术运算根据行列索引,补齐后运算,运算默认产生浮点数
补齐时缺项填充NaN (空值)
二维和一维、一维和零维间为广播运算
采用+ ‐ * /符号进行的二元运算产生新的对象
方法形式的运算如下:
1s63o6.jpg

(二)比较运算法则

比较运算只能比较相同索引的元素,不进行补齐
二维和一维、一维和零维间为广播运算
采用> < >= <= == !=等符号进行的二元运算产生布尔对象
同维度运算,尺寸一致,不同维度,广播运算,默认在1轴。

4、pandas数据类型特征分析

(一)数据的排序

.sort_index()方法在指定轴上根据索引进行排序,默认升序
.sort_index(axis=0, ascending=True)
1s240A.jpg
.sort_values()方法在指定轴上根据数值进行排序,默认升序
Series.sort_values(axis=0, ascending=True)
DataFrame.sort_values(by, axis=0, ascending=True)
by : axis轴上的某个索引或索引列表
NaN统一放到排序末尾
1sRVB9.jpg

(二)数据的基本统计分析

适用于Series和DataFrame类型
1sRJHA.jpg
1sRq4x.jpg
适用于Series类型
1sR4vF.jpg

(三)数据的累计统计分析

适用于Series和DataFrame类型,累计计算
1sWE28.jpg
适用于Series和DataFrame类型,滚动计算(窗口计算)
1sWMan.jpg

(四)数据的相关分析

两个事物,表示为X和Y,如何判断它们之间的存在相关性?
相关性:
● X增大,Y增大,两个变量正相关
● X增大,Y减小,两个变量负相关
● X增大,Y无视,两个变量不相关
协方差:
两个事物,表示为X和Y,如何判断它们之间的存在相关性?
1sW7QS.jpg
● 协方差>0, X和Y正相关
● 协方差<0, X和Y负相关
● 协方差=0, X和Y独立无关
Pearson相关系数:
1sfFeJ.jpg
r取值范围[‐1,1]
● 0.8‐1.0 极强相关
● 0.6‐0.8 强相关
● 0.4‐0.6 中等程度相关
● 0.2‐0.4 弱相关
● 0.0‐0.2 极弱相关或无相关
相关分析函数:
适用于Series和DataFrame类型:
1sfleH.jpg
实例:房价增长与M2增幅相关关系:
1sf2lT.jpg

文章作者: J.M.
文章链接: https://www.masj.top/post/b716a954.html
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Jason的小世界