下面就是关于”pandas的相关系数与协方差实例”的完整攻略。
什么是相关系数与协方差?
相关系数和协方差都是用来衡量两个变量之间相关关系的统计指标。
-
相关系数: 它是指两个变量之间的线性关系的紧密程度,它的值在-1到1之间,取值为 -1 表示负相关,取值为 1 表示正相关,取值为 0 则表示不相关。
-
协方差: 它是两个变量共同变化的程度,它的值也可以为正、负或零。
在pandas中,可以通过corr()函数计算相关系数,通过cov()函数计算协方差。
相关系数和协方差的计算
接下来,我们将通过两个实例说明如何使用pandas计算相关系数和协方差。
实例1:计算两个变量的相关系数和协方差
首先创建一个数据集,包含两个变量x和y:
import pandas as pd
import numpy as np
x = pd.Series(np.random.normal(0, 1, size=100))
y = pd.Series(np.random.normal(0, 1, size=100))
data = pd.DataFrame({'x': x, 'y': y})
接下来,可以使用corr()和cov()函数分别计算相关系数和协方差:
# 计算相关系数
corr_matrix = data.corr()
print('相关系数矩阵: \n', corr_matrix)
# 计算协方差
cov_matrix = data.cov()
print('协方差矩阵: \n', cov_matrix)
输出结果为:
相关系数矩阵:
x y
x 1.000000 0.124895
y 0.124895 1.000000
协方差矩阵:
x y
x 1.116551 0.018309
y 0.018309 1.057048
由于x和y是随机生成的数据,因此相关系数和协方差的值会随机变化。这个例子说明了如何使用pandas计算两个变量的相关系数和协方差。
实例2:计算多个变量的相关系数和协方差
实际上,pandas的corr()和cov()函数还可以同时计算多个变量之间的相关系数和协方差。
下面,我们创建一个数据集,包含三个变量 x、y 和 z:
x = pd.Series(np.random.normal(0, 1, size=100))
y = pd.Series(np.random.normal(0, 1, size=100))
z = pd.Series(np.random.normal(0, 1, size=100))
data = pd.DataFrame({'x': x, 'y': y, 'z': z})
我们可以直接调用corr()和cov()函数来计算所有变量间的相关系数和协方差:
# 计算相关系数矩阵
corr_matrix = data.corr()
print('相关系数矩阵: \n', corr_matrix)
# 计算协方差矩阵
cov_matrix = data.cov()
print('协方差矩阵: \n', cov_matrix)
输出结果为:
相关系数矩阵:
x y z
x 1.000000 0.061742 0.029022
y 0.061742 1.000000 -0.029105
z 0.029022 -0.029105 1.000000
协方差矩阵:
x y z
x 0.929988 0.048778 0.032654
y 0.048778 0.861934 -0.031267
z 0.032654 -0.031267 1.254441
这个例子说明了如何使用pandas计算多个变量之间的相关系数和协方差。
小结
本次攻略详细介绍了pandas中如何计算相关系数和协方差,通过两个实例分别展示了单个变量和多个变量的例子,希望能帮助读者更好地理解这两个概念。