python - 为什么Python中协方差函数的输出差异太大?

标签 python covariance robust

我使用 python 的三个函数来计算相同输入的协方差, 输出截然不同。有谁有经验并且知道哪一种效果最好? (有什么区别?)

我使用的功能是

sklearn.covariance.empirical_covariance(.)
MinCovDet().fit(.)
np.cov(.)

任何见解都值得赞赏。

sklearn.covariance.empirical_covariance(.) 给了我简单的

cov = (1/N) * M.transpose * M

最佳答案

同意约瑟夫·汉森的观点,更具体的内容将有助于获得彻底的答案。很快,我相信 sklearn.covariance 计算总体的协方差。然而,默认情况下 numpy.cov 计算样本协方差。要获得总体协方差,您可以指定总 N 个样本的归一化,如下所示:

协方差 = numpy.cov(a, b,bias=True)[0][1]

关于python - 为什么Python中协方差函数的输出差异太大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55364715/

相关文章:

linux - 如何(正确)使用健壮的 pthreads 进行进程同步?

python - 如何从字典列表中删除 ('u' )unicode?

python - 使用 WSGI、多个服务器部署 Web.py 应用程序

scala - 在 Scala 中使用协变不可变集合

Java - 鲁棒性和代码重用

r - `glmRob()` 在给定 `newdata` 参数时不预测

python - 是否可以在 Python 中创建具有未知属性的类?

python - 使用文件参数抑制python3中的打印输出

java - Scala 中的协方差

.net-4.0 - 为什么我不能在 .NET 4.0 中将 List<int> 分配给 IEnumerable<object>