【Pandas】pandas DataFrame cov

发布于:2025-05-12 ⋅ 阅读:(17) ⋅ 点赞:(0)

Pandas2.2 DataFrame

Computations descriptive stats

方法 描述
DataFrame.abs() 用于返回 DataFrame 中每个元素的绝对值
DataFrame.all([axis, bool_only, skipna]) 用于判断 DataFrame 中是否所有元素在指定轴上都为 True
DataFrame.any(*[, axis, bool_only, skipna]) 用于判断 DataFrame 中是否至少有一个元素在指定轴上为 True
DataFrame.clip([lower, upper, axis, inplace]) 用于截断(限制)DataFrame 中的数值
DataFrame.corr([method, min_periods, …]) 用于计算 DataFrame 中各列之间的相关系数矩阵(Correlation Matrix)
DataFrame.corrwith(other[, axis, drop, …]) 用于计算当前 DataFrame 的每一列(或行)与另一个 Series 或 DataFrame 中对应列的相关系数
DataFrame.count([axis, numeric_only]) 用于统计 DataFrame 中每列或每行的非空(非 NaN)元素数量
DataFrame.cov([min_periods, ddof, numeric_only]) 用于计算 DataFrame 中每对列之间的协方差

pandas.DataFrame.cov()

pandas.DataFrame.cov() 方法用于计算 DataFrame 中每对列之间的协方差。协方差是统计学中用来衡量两个变量之间线性关系强度的指标。正值表示正相关,负值表示负相关,而接近零的值表示几乎没有线性关系。

参数说明:
  1. min_periods:int, optional
    • 计算协方差时所需的最小观测数量。如果有效观测数少于此值,则结果为 NaN
  2. ddof:int, optional
    • Delta Degrees of Freedom(自由度调整)。默认情况下,协方差的计算使用无偏估计(即除以 N-1,其中 N 是样本数量)。可以通过设置此参数来改变分母。
  3. numeric_only:bool, optional
    • 如果为 True,则仅包含数值类型的列(如 float、int、boolean)参与计算。
返回值:

返回一个 DataFrame,表示各列之间的协方差矩阵。


示例代码:
import pandas as pd
import numpy as np

# 创建一个示例 DataFrame
df = pd.DataFrame({
    'A': [1, 2, 3, 4, 5],
    'B': [5, 4, 3, 2, 1],
    'C': [2, 4, 6, 8, 10]
})

# 计算协方差矩阵
cov_matrix = df.cov()
print(cov_matrix)
输出结果:
     A    B    C
A  2.5 -2.5  5.0
B -2.5  2.5 -5.0
C  5.0 -5.0 10.0

结果解释:
  • AB 的协方差为 -2.5,表明它们呈负相关。
  • AC 的协方差为 5.0,表明它们呈正相关。
  • BC 的协方差为 -5.0,表明它们呈负相关。

通过协方差矩阵可以直观地观察各列之间的线性关系强度和方向。