我们已经提供了以下数据集:代表差异的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
答案 0 :(得分:1)
您可以使用numpy.matrix
和numpy.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]])