1、DataFrame属性
属性或方法 | 描述 |
---|---|
DataFrame.index | DataFrame的index(行标签) |
DataFrame.columns、DataFrame.columns.tolist() | DataFrame的列标签、将列名转换为list结构 |
DataFrame.dtypes | 返回DataFrame的数据类型 |
DataFrame.select_dtypes(self[,include,exclude]) | Return a subset of the |
DataFrame.values | 将DataFrame中实际数据作为ndarray返回 |
DataFrame.axes |
返回一个列,行轴标签和列轴标签作为唯一的成员 |
DataFrame.ndim | 数据维度大小,默认为2维 |
DataFrame.size | DataFrame中元素个数 |
DataFrame.shape | 返回表示DataFrame的维度的元组 |
DataFrame.empty | 如果DataFrame为空,返回True,任何轴的长度都为0 |
DataFrame.memory_usage(self[,index,deep]) | |
DataFrame.T | 转置行和列 |
2、indexing、iteration
方法 | 描述 |
---|---|
DataFrame.head(self,n) | 返回开头前n行,默认前5行 |
DataFrame.tail(self,n) | 返回最后n行,默认最后5行 |
DataFrame.loc | 使用column和index进行定位 |
DataFrame.iloc | 即index locate,按位置进行定位,参数是整型 |
DataFrame.isin(self,values) | |
DataFrame.where(self,cond[,other,...]) | |
3、计算/描述性统计函数
函数 | 描述 |
---|---|
DataFrame.abs() | 绝对值 |
DataFrame.min()、DataFrame.max() | 最小值、最大值 |
DataFrame.mean() | 均值 |
DataFrame.median() | 中位数 |
DataFrame.sum()、DataFrame.prod() | 和、乘积 |
DataFrame.std()、DataFrame.var() | 标准差、方差 |
DataFrame.count() | 非空数据量 |
DataFrame.cumsum()、DataFrame.cumprod() | 累计总和、累计乘积 |
DataFrame.cummax()、DataFrame.cummin() | 累计最大值、累计最小值 |
DataFrame.cov() | 协方差,不包括NA/null值 |
DataFrame.corr() | 计算相关系数,不包括NA/null值 |
DataFrame.corrwith() | 计算相关系数,不包括NA/null值 |
DataFrame.describe() | 描述性统计 |
DataFrame.prod() | 乘积 |
DataFrame.product() | 乘积 |
DataFrame.rank() | 排序 |
DataFrame.round() | 四舍五入 |
DataFrame.quantile() | 返回给定分位数值 |
DataFrame.nunique() | 不同值 |
DataFrame.skew() | 计算偏度 |
3、缺失数据处理
函数 | 描述 |
---|---|
DataFrame.dropna() | 删除缺失值 |
DataFrame.fillna() |
使用指定方法填充NA/NaN值 |
DataFrame.dropna(self, axis=0, how='any', thresh=None, subset=None, inplace=False)
参数:
axis: 0 or index 删除包含缺失值的行,1 or columns 删除包含缺失值的列,默认0;
how:any,all,默认any,any:只要含有NA,删除该行/列;all:只有该行/列均为NA才删除;
thresh:指定行/列具有非NA的数目,即至少有thresh个非NA时才保留;
subset:对特定的列进行缺失值删除处理;
inplace:True修改原有的DataFrame,默认False。
DataFrame.fillna(self, value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)
参数:
value: 变量、字典、Series,DataFrame;用于填充填充缺失值,或指定为每个索引(对于Series)或列(对于DataFrame)的缺失值使用字典/Series/DataFrame的值填充;
method: {'backfill', 'bfill', 'pad', 'ffill', None}, 默认None, pad/ffill表示向后填充空值,backfill/bfill表示向前填充空值;
axis: {0 or 'index', 1 or 'columns'};
inplace: boolean, 默认为False;
limit: int, 默认为None,如果指定了方法,则这是连续的NaN值的前向/后向填充的最大数量。
downcast: dict, 默认None, 字典中的项为类型向下转换规则。
DataFrame.replace(self, to_replace=None, value=None, inplace=False, limit=None, regex=False, method='pad')
参数:
4、Reshaping, sorting, transposing
函数 | 描述 |
---|---|
DataFrame.sort_values(by,axis=0,ascending=True,inplace=False) | 按照值排序 |
DataFrame.sort_index(axis=0,ascending=False,inplace=False) | 按照索引排序 |
DataFrame.reset_index(drop=True) | 重置索引,删除原索引 |
DataFrame.pivot_table(index,columns,values,aggfunc="mean") | 透视表 |
DataFrame.sort_values(by,axis=0,ascending=True,inplace=False,kind="quicksort",na_position="last",ignore_index=False)
参数:
by:str or list of str;如果axis=0,by="列名";如果axis=1,by="行名";
axis: 0 or index,1 or columns,默认为0,按照索引排序,即纵向排序,为1横向排序;
ascending:布尔型,True升序,False降序;
inplace:布尔型,是否用排序后的数据框替换现有的数据框;
kind:排序方法,{"quicksort", "mergesort", "heapsort"}, 默认"quicksort"。
na_position:{"first", "last"}, 默认"last",默认缺失值排在最后面
ignore_index:
return:DataFrame,如果inplace=False,返回排序后的DataFrame。
DataFrame.sort_index(self,axis=0,level=None,ascending=True,inplace=False,kind="quicksort",na_position="last",sort_remaining=True, ignore_index: bool = False)
参数:
axis: 0 按照行名排序,1按照列名排序;
level:默认None,否则按照给定的level顺序排列
ascending:布尔型,True升序,False降序;
inplace:布尔型,是否用排序后的数据框替原来有的数据框;
kind:排序方法,{"quicksort", "mergesort", "heapsort"}, 默认"quicksort"。
na_position:{"first", "last"}, 默认"last",默认缺失值排在最后
ignore_index:
return:DataFrame,如果inplace=False,返回排序后的DataFrame。
DataFrame.pivot_table(self, values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All', observed=False) → 'DataFrame'
参数: