Pandas 学习笔记(一)
生成对象
-
s = pd.Series([1,2,np.nan,5,6])
用值列表生成Series时,Pandas默认自动生成整数索引
-
df = pf.DataFrame(np.random.randn(6,4),index=dates,columns=list(‘ABCD’))
也可以用Series生成DataFrame
df2=({
‘A’ :1,
‘B’ : pd.Timestamp(“20210123”) ,
‘C’ : pd.Series(1,index = list(range(4)))
})
DataFrame 的列可以具有不同的属性
查看数据
-
df.head()
df.head()展示数据的头部
-
df.tail()
df.tail()展示尾部数据
-
df.index
显示索引
-
df.columns
显示列名
-
df.describe()
快速查看数据的统计摘要
-
df.T
转置数据
-
df.sort_index(axis = 1,ascending = False)
按轴排序
-
df.sort_values(by = ‘B’)
按值排序
选择
-
df[‘A’]
选择A列,生成Series
-
df[0:3]
使用[]切片行
-
df.loc[dates[0]]
按照标签提取一行数据
-
df.loc[:,[‘A’,'B]]
用标签选择多列数据
-
df.at[dates[0],‘A’]
快速访问标量
缺失值
Pandas 用 np.nan 表示缺失数据。 计算时,默认不包含空值
删除含有缺失值的行
df.dropna(how = 'any')
填充缺失值
df.fillna(value = 5)
提取 nan 值的布尔掩码
pd.isna(df)
合并
- conact()
- join()
- append()
分组
group by 一般指以下的处理过程
- 分割 :将数据分割成多组
- 应用 :为每组单独应用函数
- 组合 :将处理结果组合成一个数据结构
可视化
-
ts = ts.cumsum() ts.plot() #DataFrame 的 plot() 方法会快速绘制带标签的列
输入输出
-
df.to_csv('xxx.csv')
-
df.to_hdf('foo.h5','df')
-
df.to_excel('xxx.xlsx',sheet_name = 'Sheet1') pd.read_excel('xxx.xlsx','Sheet1',index_col = None ,na_valeus = ['NA'])