问题描述
我有一个20 * 1926的矩阵,我想应用以下定义来获得每一列中每一行的每两个元素之间的相似性。我知道必须对列进行一些迭代,但是我的尝试没有用。
在这里我给出一个小矩阵并解释我的问题。 [2 5 1 0, 3 1 8 1 4 0 2 1] 我的代码:
import pandas as pd
import numpy as np
Df= [2 5 1 0,3 1 8 1,4 0 2 1]
Adf= np.array(Df)
row = (['B0','B1','B2','B3'])
R = len( row )
i = 0
cords = {}
for i in range( R ):
cords[row[i]] = tuple( Adf.tolist()[i] )
i += 1
def dist(a,b):
d = [(a[0] - b[0])**2]
return(d[0]*0.45)
D = {}
for C1,cords1 in cords.items():
D[C1] = {}
for C2,cords2 in cords.items():
M= dist( cords1,cords2 )
print(M)
import csv
nms = ([M])
f = open('G.csv','a')
with f:
writer = csv.writer(f)
for row in nms:
writer.writerow(nms)
它仅应用于第一列。我该怎么办?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)