我正在与anaconda一起使用下一个代码来取出两个矩阵之间的相关系数。 第一个矩阵读取矩阵左上角的16个文件。 该总和是为了获得平均值以与另一个文件的结果进行比较
`` `python
for i in range(0,16):
i = i + 5
file = pd.read_csv(path,header=None)
file=file.fillna(0)
file = pd.DataFrame(file)
matrix = np.matrix(file)
matrix = np.flip(matrix, 1)
b = np.copy(matrix)
b = np.swapaxes(b, 1, 0)
np.fill_diagonal(b, 0)
c = matrix + b
sum = c.sum(0) / c.shape[0]
sum=pd.DataFrame(sum)
file2 = pd.read_csv(path,header=None)
file2=pd.DataFrame(file2)
file2 = file2.drop(file2.columns[48], axis=1)
` ``
如果sum是(1,48)的矩阵,而file2是(16,48)的矩阵,则两个文件之间的相关系数。
答案 0 :(得分:1)
我做了一些研究,希望下面可以对您有所帮助:
numpy.corrcoef(x, y=None, rowvar=True, bias=<no value>, ddof=<no value>)
返回Pearson乘积矩相关系数。
两个2D数组之间的相关性(默认为“有效”大小写):
您可以像这样简单地使用矩阵乘法np.dot-
out = np.dot(arr_one,arr_two.T)
两个输入数组的每个成对行组合(row1,row2)之间的默认“有效”大小写的关联将对应于每个(row1,row2)位置的乘法结果。
如果我误解了,请澄清您的问题。