Python Numpy协方差矩阵非正规化
我知道Python Numpy协方差矩阵非正规化,python,numpy,matrix,covariance,normalize,Python,Numpy,Matrix,Covariance,Normalize,我知道numpy.cov计算给定N维数组的协方差 我可以看到归一化是通过(N-1)完成的。但对于我的具体情况,协方差矩阵由下式给出: 其中,xi是数量i和j是箱子 从上面的等式可以看出,该协方差矩阵通过(N-1)/N进行归一化 获得上述标准化 我可以简单地将从numpy.cov获得的协方差矩阵乘以(N-1)**2/N得到上述归一化值吗?对吗? 还是应该在numpy.cov中使用bias参数?如果是这样,怎么做?有两种方法 我们可以使用bias=1调用np.cov,然后将结果乘以N-1 或 我们
numpy.cov
计算给定N维数组的协方差
我可以看到归一化是通过(N-1)
完成的。但对于我的具体情况,协方差矩阵由下式给出:
其中,xi
是数量i
和j
是箱子
从上面的等式可以看出,该协方差矩阵通过(N-1)/N
进行归一化
获得上述标准化
我可以简单地将从numpy.cov
获得的协方差矩阵乘以(N-1)**2/N
得到上述归一化值吗?对吗?
还是应该在
numpy.cov
中使用bias
参数?如果是这样,怎么做?有两种方法
bias=1调用np.cov
,然后将结果乘以N-1
(N-1)**2/N
有两种方法可以做到这一点
bias=1调用np.cov
,然后将结果乘以N-1
(N-1)**2/N
当
bias=1
时,通过N
进行归一化。因此,我相信你可以将结果乘以N-1
?@BeRecursive:所以我用bias=1
调用np.cov
,然后将结果乘以N-1
?当然,这不等于用(N-1)**2/N
乘以bias
设置默认值吗?但要做的工作要多得多:)我也会通过自己简单地快速实现并检查您得到的结果是否符合您的预期来再次检查这一点。重复检查没有坏处@是的,我会的。但是使用上述两种方法,如果我们需要手动归一化,这是正确的程序吗?如果bias=1
,则通过N
进行归一化。因此,我相信你可以将结果乘以N-1
?@BeRecursive:所以我用bias=1
调用np.cov
,然后将结果乘以N-1
?当然,这不等于用(N-1)**2/N
乘以bias
设置默认值吗?但要做的工作要多得多:)我也会通过自己简单地快速实现并检查您得到的结果是否符合您的预期来再次检查这一点。重复检查没有坏处@是的,我会的。但是,如果我们需要手动归一化,那么使用上述两种方法是否正确?