具有非常小值/的数据集的变量的协方差矩阵



我有一个数据集,其中包含非常小的值,因此当你试图计算协方差矩阵时,你会得出NAN值。当我能够在计算中缩放那些非常小的值时,我应该如何更改数据?

我正在使用MATLAB,但任何其他选择也可以。

从注释中可以清楚地看出,问题不是小值,而是数据中的NaN。如果您有统计工具箱,则可以使用nancov,它会忽略包含NaN的观测值(行)。如果没有,实现起来很简单:

cov(x(~any(isnan(x), 2), :))

如果您的数据中有许多NaN,如果您分别计算每对变量的协方差,并排除仅针对给定变量对包含NaN的行,则可能会更好地估计协方差矩阵。然而,这种方法的缺点是所得矩阵可能不再是正定的。

相关内容

  • 没有找到相关文章

最新更新