矩阵形式的位置差异和协方差

时间:2017-04-27 08:52:50

标签: pandas numpy scipy

我们已经提供了以下数据集:代表差异的A,B,C和代表协方差的D,E, F。我想以矩阵形式定位这组数据:

 matrix:   Z     Y     X
        Z  A     D     F
        Y  D     B     E
        X  F     E     C

考虑到我不知道方差/ cov的数量,如何以矩阵形式排列数据集?

然后我希望得到的矩阵乘以:

 matrix*  (G,H,I) * (G
                     H
                     I) 

第二个问题是,我如何将矩阵尺寸3 * 3乘以1 * 3和3 * 1

1 个答案:

答案 0 :(得分:1)

您可以使用numpy.matrixnumpy.array创建自己的矩阵和数组,

In [1]: import numpy as np

        matrix1 = np.matrix([[1, 4, 6], [4, 2, 5],[6, 5, 3]])

        array1 = np.array([7,8,9])

第二个问题:现在使用numpy.transpose从array1计算二次矩阵,

In [2]: matrix2 = array1*np.transpose([array1])

In [3]: matrix2

Out[3]: array([[49, 56, 63],
               [56, 64, 72],
               [63, 72, 81]])

最后,将矩阵与numpy.matmul

相乘
In [4]: matrix3 = np.matmul(matrix1, matrix2)

In [5]: matrix3

Out[5]: matrix([[651, 744, 837],
                [623, 712, 801],
                [763, 872, 981]])