Pandas 系列文章:
- Python 数据分析三剑客之 Pandas(一):认识 Pandas 及其 Series、DataFrame 对象
- Python 数据分析三剑客之 Pandas(二):Index 索引对象以及各种索引操作
- Python 数据分析三剑客之 Pandas(三):算术运算与缺失值的处理
- Python 数据分析三剑客之 Pandas(四):函数应用、映射、排序和层级索引
- Python 数据分析三剑客之 Pandas(五):统计计算与统计描述
- Python 数据分析三剑客之 Pandas(六):GroupBy 数据分裂、应用与合并
- Python 数据分析三剑客之 Pandas(七):合并数据集
- Python 数据分析三剑客之 Pandas(八):数据重塑、重复数据处理与数据替换
- Python 数据分析三剑客之 Pandas(九):时间序列
- Python 数据分析三剑客之 Pandas(十):数据读写
专栏:
【NumPy 专栏】【Pandas 专栏】【Matplotlib 专栏】
推荐学习资料与网站:
【NumPy 中文网】【Pandas 中文网】【Matplotlib 中文网】【NumPy、Matplotlib、Pandas 速查表】
1 | 这里是一段防爬虫文本,请读者忽略。 |
【01x00】统计计算
Pandas 对象拥有一组常用的数学和统计方法。它们大部分都属于约简和汇总统计,用于从 Series 中提取单个值(如 sum 或 mean)或从 DataFrame 的行或列中提取一个 Series。跟对应的 NumPy 数组方法相比,它们都是基于没有缺失数据的假设而构建的。
【01x01】sum() 求和
sum()
方法用于返回指定轴的和,相当于 numpy.sum()
。
在 Series 和 DataFrame 中的基本语法如下:
Series.sum(self, axis=None, skipna=None, level=None, numeric_only=None, min_count=0, **kwargs)
DataFrame.sum(self, axis=None, skipna=None, level=None, numeric_only=None, min_count=0, **kwargs)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.sum.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.sum.html
常用参数描述如下:
参数 | 描述 |
---|---|
axis | 指定轴求和,0 or ‘index’ ,1 or ‘columns’ ,只有在 DataFrame 中才有 1 or 'columns’ |
skipna | bool 类型,求和时是否排除缺失值(NA/null),默认 True |
level | 如果轴是 MultiIndex(层次结构),则沿指定层次求和 |
在 Series 中的应用:
1 | import pandas as pd |
在 DataFrame 中的应用:
1 | import pandas as pd |
【01x02】min() 最小值
min()
方法用于返回指定轴的最小值。
在 Series 和 DataFrame 中的基本语法如下:
Series.min(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)
DataFrame.min(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.min.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.min.html
常用参数描述如下:
参数 | 描述 |
---|---|
axis | 指定轴求最小值,0 or ‘index’ ,1 or ‘columns’ ,只有在 DataFrame 中才有 1 or 'columns’ |
skipna | bool 类型,求最小值时是否排除缺失值(NA/null),默认 True |
level | 如果轴是 MultiIndex(层次结构),则沿指定层次求最小值 |
在 Series 中的应用:
1 | import pandas as pd |
在 DataFrame 中的应用:
1 | import pandas as pd |
【01x03】max() 最大值
max()
方法用于返回指定轴的最大值。
在 Series 和 DataFrame 中的基本语法如下:
Series.max(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)
DataFrame.max(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.max.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.max.html
常用参数描述如下:
参数 | 描述 |
---|---|
axis | 指定轴求最大值,0 or ‘index’ ,1 or ‘columns’ ,只有在 DataFrame 中才有 1 or 'columns’ |
skipna | bool 类型,求最大值时是否排除缺失值(NA/null),默认 True |
level | 如果轴是 MultiIndex(层次结构),则沿指定层次求最大值 |
在 Series 中的应用:
1 | import pandas as pd |
在 DataFrame 中的应用:
1 | import pandas as pd |
【01x04】mean() 平均值
mean()
方法用于返回指定轴的平均值。
在 Series 和 DataFrame 中的基本语法如下:
Series.mean(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)
DataFrame.mean(self, axis=None, skipna=None, level=None, numeric_only=None, **kwargs)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.mean.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.mean.html
常用参数描述如下:
参数 | 描述 |
---|---|
axis | 指定轴求平均值,0 or ‘index’ ,1 or ‘columns’ ,只有在 DataFrame 中才有 1 or 'columns’ |
skipna | bool 类型,求平均值时是否排除缺失值(NA/null),默认 True |
level | 如果轴是 MultiIndex(层次结构),则沿指定层次求平均值 |
在 Series 中的应用:
1 | import pandas as pd |
在 DataFrame 中的应用:
1 | import pandas as pd |
【01x05】idxmin() 最小值索引
idxmin()
方法用于返回最小值的索引。
在 Series 和 DataFrame 中的基本语法如下:
Series.idxmin(self, axis=0, skipna=True, *args, **kwargs)
DataFrame.idxmin(self, axis=0, skipna=True)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.idxmin.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.idxmin.html
常用参数描述如下:
参数 | 描述 |
---|---|
axis | 指定轴,0 or ‘index’ ,1 or ‘columns’ ,只有在 DataFrame 中才有 1 or 'columns’ |
skipna | bool 类型,是否排除缺失值(NA/null),默认 True |
在 Series 中的应用:
1 | import pandas as pd |
在 DataFrame 中的应用:
1 | import pandas as pd |
【01x06】idxmax() 最大值索引
idxmax()
方法用于返回最大值的索引。
在 Series 和 DataFrame 中的基本语法如下:
Series.idxmax(self, axis=0, skipna=True, *args, **kwargs)
DataFrame.idxmax(self, axis=0, skipna=True)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.idxmax.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.idxmax.html
常用参数描述如下:
参数 | 描述 |
---|---|
axis | 指定轴,0 or ‘index’ ,1 or ‘columns’ ,只有在 DataFrame 中才有 1 or 'columns’ |
skipna | bool 类型,是否排除缺失值(NA/null),默认 True |
在 Series 中的应用:
1 | import pandas as pd |
在 DataFrame 中的应用:
1 | import pandas as pd |
【02x00】统计描述
describe()
方法用于快速综合统计结果:计数、均值、标准差、最大最小值、四分位数等。还可以通过参数来设置需要忽略或者包含的统计选项。
在 Series 和 DataFrame 中的基本语法如下:
Series.describe(self: ~ FrameOrSeries, percentiles=None, include=None, exclude=None)
DataFrame.describe(self: ~ FrameOrSeries, percentiles=None, include=None, exclude=None)
官方文档:
https://pandas.pydata.org/docs/reference/api/pandas.Series.describe.html
https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.describe.html
参数 | 描述 |
---|---|
percentiles | 数字列表,可选项,要包含在输出中的百分比。所有值都应介于 0 和 1 之间。默认值为 [.25、.5、.75],即返回第 25、50 和 75 个百分点 |
include | 要包含在结果中的数据类型,数据类型列表,默认 None,具体取值类型参见官方文档 |
exclude | 要从结果中忽略的数据类型,数据类型列表,默认 None,具体取值类型参见官方文档 |
描述数字形式的 Series 对象:
1 | import pandas as pd |
分类描述:
1 | import pandas as pd |
描述时间戳:
1 | import pandas as pd |
描述 DataFrame 对象:
1 | import pandas as pd |
不考虑数据类型,显示所有描述:
1 | import pandas as pd |
仅包含 category 列:
1 | import pandas as pd |
【03x00】常用统计方法
其他常用统计方法参见下表:
方法 | 描述 | 官方文档 |
---|---|---|
count | 非NA值的数量 | Series丨DataFrame |
describe | 针对Series或各DataFrame列计算汇总统计 | Series丨DataFrame |
min | 计算最小值 | Series丨DataFrame |
max | 计算最大值 | Series丨DataFrame |
argmin | 计算能够获取到最小值的索引位置(整数) | Series |
argmax | 计算能够获取到最大值的索引位置(整数) | Series |
idxmin | 计算能够获取到最小值的索引值 | Series丨DataFrame |
idxmax | 计算能够获取到最大值的索引值 | Series丨DataFrame |
quantile | 计算样本的分位数(0到1) | Series丨DataFrame |
sum | 值的总和 | Series丨DataFrame |
mean | 值的平均数 | Series丨DataFrame |
median | 值的算术中位数(50%分位数) | Series丨DataFrame |
mad | 根据平均值计算平均绝对离差 | Series丨DataFrame |
var | 样本值的方差 | Series丨DataFrame |
std | 样本值的标准差 | Series丨DataFrame |
1 | 这里是一段防爬虫文本,请读者忽略。 |