数据处理的目的是为了数据分析,下面分享常用的数据分析中会用到的函数。
一,分组和聚合
groupby用于对数据分组,分组之后可以直接调用聚合函数求值;agg()函数把分组和调用聚合函数集成到一个函数来实现:
DataFrame.groupby(self, by=None, axis=0, level=None, as_index=True, sort=True, group_keys=True, squeeze=False, observed=False, **kwargs) DataFrame.agg(self, func, axis=0, *args, **kwargs)
二,窗口
rolling()是指按照窗口滚动求值,expanding()是指依次递增1,计算累加;ewm指的是指数加权滚动平均:
DataFrame.rolling(self, window, min_periods=None, center=False, win_type=None, on=None, axis=0, closed=None) DataFrame.expanding(self, min_periods=1, center=False, axis=0) DataFrame.ewm(self, com=None, span=None, halflife=None, alpha=None, min_periods=0, adjust=True, ignore_na=False, axis=0)
详细信息,可以参考:pandas 学习 第4篇:序列的处理(应用、聚合、转换、映射、分组、滚动、扩展、指数加权移动平均)
三,相关
计算两对列值之间的相关性:
DataFrame.corr(self, method='pearson', min_periods=1)
method:计算相关性的方法,有效值是 ‘pearson’, ‘kendall’, ‘spearman’ 或 callable
min_periods:每对列必须具有有效结果的最小观察数量,目前只适用于:Pearson 和 Spearman相关性。
四,统计函数
常用的统计函数:
- min、max:最小值、最大值
- mode:众数
- var:方差
- std:标准差
- sum:累加和
- mean:均值
- mad:绝对值的均值
- median:中位数
- quantile:百分位数
- count:计数
- cumsum:累加求和
- cumprod:累积乘积
- cummin、cummax:累积最小值、累积最大值
参考文档:
pandas DataFrame