我想计算列表内列表之间的欧几里德距离,以及该距离是否小于阈值,而不是获取此类列表的最大元素。
我的解决方案给了我每两个列表之间的距离,但我想将每个列表相互比较。基本上,可能是两个循环解决方案。
yhat = [[10 , 15, 200 ,220], [20 , 25, 200 ,230], [30 , 15, 200 ,230], [100 , 150, 230 ,300], [110 , 150, 240 ,300] ]
def euclidean(v1, v2):
return sum((p-q)**2 for p, q in zip(v1, v2)) ** .5
it = iter(yhat)
prev = next(it)
ec =[]
for ind, ele in enumerate(it):
ec.append(euclidean(ele, prev))
prev = ele
ec
总而言之,我想要一个xhat包含元素的新列表:
xhat = [[30 , 35, 200 ,230], [110 , 150, 240 ,300] ]
明月笑刀无情
慕丝7291255
随时随地看视频慕课网APP
相关分类