Pandas DataFrame count, cov, cummax, cummin, cumprod 方法详解
Pandas DataFrame 提供了多种统计与累积计算方法。count 用于统计非空值数量,支持按行或列计算;cov 计算列间协方差矩阵,处理缺失值并可选自由度调整;cummax、cummin 分别计算累积最大值和最小值,可忽略缺失值;cumprod 计算累积乘积。这些方法常用于数据清洗、时间序列分析及特征工程,帮助快速理解数据分布与趋势变化。

Pandas DataFrame 提供了多种统计与累积计算方法。count 用于统计非空值数量,支持按行或列计算;cov 计算列间协方差矩阵,处理缺失值并可选自由度调整;cummax、cummin 分别计算累积最大值和最小值,可忽略缺失值;cumprod 计算累积乘积。这些方法常用于数据清洗、时间序列分析及特征工程,帮助快速理解数据分布与趋势变化。

df.count(axis=0, numeric_only=False)
用于计算 DataFrame 中每一列或每一行的非 NA/null 值的数量。默认计算每一列的非缺失值数量,也可指定参数计算每一行的数量。
返回一个 Series,包含每列或每行的非缺失值的数量。
无特殊说明。
import pandas as pd
import numpy as np
data = {
'A': [1, 2, np.nan, 4],
'B': [np.nan, np.nan, np.nan, 1],
'C': [1, 2, 3, 4]
}
df = pd.DataFrame(data)
# 计算每列的非 NA 数量
column_count = df.count()
print(column_count)
# 计算每行的非 NA 数量
row_count = df.count(axis=1)
print(row_count)
A 3
B 1
C 4
dtype: int64
0 2
1 2
2 1
3 3
dtype: int64
df.cov(min_periods=None, ddof=1, numeric_only=False)
用于计算 DataFrame 中各列之间的协方差矩阵,帮助分析变量之间的关系。
返回一个协方差矩阵 (DataFrame),行和列对应于 DataFrame 的列,矩阵中的值表示对应列之间的协方差。
import pandas as pd
data = {
'A': [1, 2, 3, 4],
'B': [4, 5, 6, 7],
'C': [7, 8, 9, 10]
}
df = pd.DataFrame(data)
cov_matrix = df.cov()
print(cov_matrix)
A B C
A 1.666667 1.666667 1.666667
B 1.666667 1.666667 1.666667
C 1.666667 1.666667 1.666667
df.cummax(axis=None, skipna=True)
计算 DataFrame 中每列或每行的累积最大值,返回与原 DataFrame 形状相同的新 DataFrame。
返回一个与原 DataFrame 形状相同的新 DataFrame,每个元素表示其前面所有元素的最大值。
import pandas as pd
data = {
'A': [1, 2, 3, 4],
'B': [4, 3, 2, 1],
'C': [1, 5, 2, 3]
}
df = pd.DataFrame(data)
cummax_df = df.cummax()
print(cummax_df)
A B C
0 1 4 1
1 2 4 5
2 3 4 5
3 4 4 5
df.cummin(axis=None, skipna=True)
计算 DataFrame 中每列或每行的累积最小值,返回与原 DataFrame 形状相同的新 DataFrame。
返回一个与原 DataFrame 形状相同的新 DataFrame,每个元素表示其前面所有元素的最小值。
import pandas as pd
data = {
'A': [5, 3, 6, 2],
'B': [1, 2, 4, 0],
'C': [3, 7, 1, 5]
}
df = pd.DataFrame(data)
cummin_df = df.cummin()
print(cummin_df)
A B C
0 5 1 3
1 3 1 3
2 3 1 1
3 2 0 1
df.cumprod(axis=None, skipna=True)
计算 DataFrame 中每列或每行的累积乘积,返回与原 DataFrame 形状相同的新 DataFrame。
返回一个与原 DataFrame 形状相同的新 DataFrame,每个元素表示其前面所有元素的乘积。
import pandas as pd
data = {
'A': [2, 3, 4],
'B': [1, 2, 3],
'C': [5, 6, 7]
}
df = pd.DataFrame(data)
cumprod_df = df.cumprod()
print(cumprod_df)
A B C
0 2 1 5
1 6 2 30
2 24 6 210

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online