Python【相关矩阵】和【协方差矩阵】

相关系数矩阵

  • pandas.DataFrame(数据).corr()
import pandas as pd
df = pd.DataFrame({
    'a': [11, 22, 33, 44, 55, 66, 77, 88, 99],
    'b': [10, 24, 30, 48, 50, 72, 70, 96, 90],
    'c': [91, 79, 72, 58, 53, 47, 34, 16, 10],
    'd': [99, 10, 98, 10, 17, 10, 77, 89, 10]})
df_corr = df.corr()
# 可视化
import matplotlib.pyplot as mp, seaborn
seaborn.heatmap(df_corr, center=0, annot=True, cmap='YlGnBu')
mp.show()

协方差矩阵

  • numpy.cov(数据)
import numpy as np
matric = [
    [11, 22, 33, 44, 55, 66, 77, 88, 99],
    [10, 24, 30, 48, 50, 72, 70, 96, 90],
    [91, 79, 72, 58, 53, 47, 34, 16, 10],
    [55, 20, 98, 19, 17, 10, 77, 89, 14]]
covariance_matrix = np.cov(matric)
# 可视化
print(covariance_matrix)
import matplotlib.pyplot as mp, seaborn
seaborn.heatmap(covariance_matrix, center=0, annot=True, xticklabels=list('abcd'), yticklabels=list('ABCD'))
mp.show()

补充

协方差

C o v ( X , Y ) = E [ ( X − E [ X ] ) ( Y − E [ Y ] ) ] = E [ X Y ] − 2 E [ Y ] [ X ] + E [ X ] [ Y ] = E [ X Y ] − E [ X ] [ Y ] Cov(X,Y) = E[(X-E[X])(Y-E[Y])] \newline = E[XY] - 2E[Y][X] + E[X][Y] \\ = E[XY] - E[X][Y] Cov(X,Y)=E[(XE[X])(YE[Y])]=E[XY]2E[Y][X]+E[X][Y]=E[XY]E[X][Y]

相关系数

r ( X , Y ) = C o v ( X , Y ) V a r [ X ] V a r [ Y ] r(X,Y) = \frac{Cov(X,Y)}{\sqrt{Var[X]Var[Y]}} r(X,Y)=Var[X]Var[Y] Cov(X,Y)

EXCEL也能做

CORREL函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小基基o_O

您的鼓励是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值