Pandas库
提供高性能易用数据类型和分析工具的第三方库
import pandas as pd
Series一维
DateFrame二维-多维
Series类型
由一组数据及与之相关的数据索引组成
自动索引
自定义索引
创建方法
从标量值创建
s=pd.Series(25,index['a','b','c','d'])
从字典创建
s=pd.Series({‘a’:9,'b':8,'c':7})#可以通过index交换顺序确定结构
从ndarray类型创建
n = pd.Series(np.arange(5))
DataFrame类型
- 由共同相同索引的一组列组成(多列数据),纵向index(axis=0),横向column(axis=1)
- 是一个表格型的数据类型,每列值类型可以不同
- 有行索引和列索引
- 常用与表达二维数据
创建方法
从二维ndarray对象创建
从一维ndarray对象字典创建
从列表类型的字典创建
dl={'one':[1,2,3,4],'two':[9,8,7,6]}
d=pd.DataFrame(dl,index=['a','b','c','d'])
数据类型操作
重新索引
.reindex()能够改变或重排
索引类型常用方法
方法 | 说明 |
---|---|
.append(idx) | 连接另一个index对象,产生新的index对象 |
.diff(idx) | 计算差集,产生新的index对象 |
.intersection(idx) | 计算交集 |
.union(idx) | 计算并集 |
.delete(loc) | 删除loc位置处的元素 |
.insert(loc,e) | 在loc位置增加一个元素e |
删除指定索引对象
.drop()能够删除指定行或列索引
数据类型运算
算数运算法则:
- 根据行列索引,补齐后运算,默认产生浮点数
- 缺项填充NaN
- 二维和一维(默认1轴)、一维和零维间为广播运算
运算方法:
.add(d,**argws)
.sub(d,**argws)
.mul(d,**argws)
.div(d,**argws)
比较运算法则
- 只能比较相同索引的元素,不进行补齐
- 二维和一维、一维和零维间为广播运算
- 产生布尔值
数据的排序
.sort_index()在制定轴上根据索引进行排序,默认升序
.sort_index(axis=0,ascending=True)
.sort_values()在指定轴上根据数值进行排序,默认升序
Series.sort_values(axis=0,ascending=True)
DataFrame.sort_values(by,axis=0,ascending=True)
by:axis轴上的某个索引或索引列表
基本统计分析函数
适用于series类型
.argmin()计算数据最小值所在位置的索引位置(自动索引)
.idxmin()计算数据最小值所在位置的索引(自定义索引)
.describe()按0轴方向统计
累计统计分析函数
方法 | 说明 |
---|---|
.cumsum() | 依次给出前n和 |
.cumprod() | 依次给出前n积 |
.cummax() | 依次给出前n最大值 |
滚动计算(窗口计算)
.rolling()
相关分析函数
.cov()计算协方差矩阵
.corr()计算相关系数矩阵