Pandas学习笔记 02 pandas基础
第二章 pandas基础
1 文件的读取和写入
1.1 文件读取
read_csv
read_table
read_excel
公共参数
header=None
表示第一行不作为列名
index_col
表示把某一列或几列作为索引
usecols
表示读取的列,默认读取所有的列
parse_dates
表示需要转化为时间的列
nrows
表示读取的数据行数。
对于read_table
读取txt
,使用sep
(正则)自定义分隔符,同时指定engine
为python
1.2 数据写入
to_csv
to_excel
保存时使用index=False
去除索引
2 基本数据结构
Series
一般由序列值data
、索引index
、存储类型dtype
、序列名称name
组成。
DataFrame
在Series
的基础上增加列索引columns
,.T
可进行转置。
获取属性:values
index
dtype
name
shape
columns
3 常用基本函数
3.1汇总函数
head, tail
分别表示返回表或者序列的前n
行和后n
行,其中n
默认为5。
info, describe
分别返回表的信息概况和表中数值列对应的主要统计量
3.2 特征统计函数(聚合)
sum, mean, median, var, std, max, min
:和、均值、中位数、无偏方差、样本标准差、最大值、最小值。
quantile, count, idxmax/idxmin
:分位数、非缺失值个数、最大/小值对应的索引
3.3 唯一值函数
unique
:获取唯一值列表
nunique
:获取唯一值个数
value_counts
:获取唯一值和出现频数
drop_duplicates
:删除多列组合的重复值。
关键参数keep
默认值为first
,保留组合第一个出现的所在行;last
表示保留最后一次出现的所在行,False
表示把所有重复组合所在的行剔除(只保留出现过一次的组合)。
duplicated
返回是否为唯一值的布尔列表,keep
参数同上。
3.4 替换函数
映射替换:replace
-
直接传入字典或双列表
-
方向替换,
method=ffill/bfill
用前方值或后方值替换 -
正则替换,
regex=True
逻辑替换:where
和mask
where
在传入条件为False
时进行替换,mask
在传入条件为True
时进行替换
数值替换:round, abs, clip
分别表示给定精度四舍五入、取绝对值和截断
3.5 排序函数
sort_values
: 值排序,默认参数ascending=True
为升序
sort_index
: 索引排序,需要level
参数指定索引层名称或层号。
3.6 apply方法
向apply
传入自定义函数,对序列进行自定义处理
4 窗口对象
4.1 滑窗对象
.rolling
获得滑窗对象,参数window
定义窗口大小,再使用聚合函数或apply自定义处理。
shift, diff, pct_change
是一组类滑窗函数,分别表示前移、做差、增长率,公共参数为periods=n
,可以为负值,默认为1,表示与前一位比较。功能可以用窗口大小为n+1
的rolling
方法等价代替。
4.2 扩张窗口
.expanding
表示扩张窗口,使用聚合函数会依次作用到逐步扩张的窗口上,类似cummax, cumsum, cumprod
。
参考:
joyful pandas教程 https://github.com/datawhalechina/joyful-pandas