我必须计算两个矩阵之间的距离。距离是匹配点之间的平方差的总和。
这是矩阵A
[{'id': 1, 'feature': 17}, {'id': 3, 'feature': 1},{'id': 18, 'feature': 26}]
这是矩阵B:
[{'id': 4, 'feature': 3}, {'id': 1, 'feature': 183},{'id': 17, 'feature': 9},{'id': 18, 'feature': 19},{'id': 123, 'feature': 2}]
距离是:
(17-183)^2 + (26-19)^2 = 27 605
凭借我的Python水平,我会这样做:
s = 0
for a in A:
for b in B:
if(a['id']==b['id']):
s+=(a['feature']-b['feature'])*(a['feature']-b['feature'])
我得到了好结果。
但我会在大矩阵上多次进行此操作。
问题是:在Python中编写代码的最快方法是什么?