看过来
《pandas 教程》 持续更新中,提供建议、纠错、催更等加作者微信: gairuo123(备注:pandas教程)和关注公众号「盖若」ID: gairuo。跟作者学习,请进入 Python学习课程。欢迎关注作者出版的书籍:《深入浅出Pandas》 和 《Python之光》。
pandas
的 cov()
方法用于计算 DataFrame
中各列之间的协方差矩阵。协方差衡量两个变量之间的线性关系强度和方向,与相关系数类似,但不同的是协方差还保留了变量的单位。
DataFrame.cov(min_periods=None, ddof=1, numeric_only=False)
计算 DataFrame 中各列之间的成对协方差。返回的数据框是 DataFrame 各列的协方差矩阵。
计算过程中会自动排除 NA 和 null 值。可以设置每个值的最小观测值数量阈值。如果比较的观测值低于此阈值,则结果将返回 NaN。
该方法通常用于时间序列数据的分析,以了解不同度量在时间上的关系。
min_periods
: 可选。计算协方差所需的最小观测值数量。如果某个对比中观测值少于此数量,则协方差将被设为 NaN。默认值为 None
。ddof
: 可选。用于自由度的除数。默认为 1。numeric_only
: 可选。布尔值,默认为 False
。如果为 True
,则仅考虑数值类型的列。返回一个 DataFrame
,其元素是输入数据的协方差矩阵。
假设有一个包含多个变量的数据集,我们希望计算这些变量之间的协方差矩阵。
import pandas as pd
# 创建示例数据
data = {
'A': [1, 2, 3, 4, 5],
'B': [2, 4, 6, 8, 10],
'C': [5, 4, 3, 2, 1]
}
df = pd.DataFrame(data)
# 计算协方差矩阵
cov_matrix = df.cov()
print("协方差矩阵:")
print(cov_matrix)
输出:
协方差矩阵:
A B C
A 2.5 5.0 -2.5
B 5.0 10.0 -5.0
C -2.5 -5.0 2.5
在这个示例中:
A
和 B
之间的协方差为 5.0,表示它们正相关且有较强的线性关系。A
和 C
之间的协方差为 -2.5,表示它们负相关。B
和 C
之间的协方差为 -5.0,表示它们也负相关。这些结果帮助我们理解数据中不同变量之间的线性关系强度和方向。
更新时间:2024-08-13 09:45:33 标签:pandas python cov 协方差