首页 > 解决方案 > 协方差和相关系数

问题描述

我有两个随机变量,我需要为它们精确计算一些特征。

https://math.stackexchange.com/questions/3052308/calculated-covariance-corr-coefficient-confirmation?noredirect=1#

我已经在 J​​ava 中做到了这一点,但我想用至少一个工具来确认我的答案。

任何擅长 python / 概率的人都可以为我提供一些指导,我如何在 python 中计算这 6 个值?我想这真的很简单,但我对 python 不是很有信心。

我查看了 numpy cov 函数的文档,但我很难理解它。

标签: pythonnumpy

解决方案


最好的解决方案是使用以下函数numpy

import numpy as np

e_X = np.average(X_values, weights=X_weights)
e_Y = np.average(Y_values, weights=Y_weights)

varX = np.average((X_values-e_X)**2, weights=X_weights)
varY = np.average((Y_values-e_Y)**2, weights=Y_weights)

cov_XY = np.cov(X_values, Y_values)
corrcoef_XY = np.corrcoef(X_values, Y_values)

推荐阅读