我有一个计算距离的数据帧,如下所示,
x_y_data = pd.read_csv("x_y_points400_labeled_20pnts_csv.csv")
x = x_y_data.loc[:,'x']
y = x_y_data.loc[:,'y']
xs=x.to_numpy()
ys=y.to_numpy()
result = pd.DataFrame(np.sqrt((xs[:, None] - xs)**2 + (ys[:, None] - ys)**2))
我得到所有距离的结果,
0 1 2 ... 10 11 12
0 0.000000 16.132750 33.039985 ... 17.628989 27.273213 20.898938
1 16.132750 0.000000 16.912458 ... 16.658800 17.480346 25.375308
2 33.039985 16.912458 0.000000 ... 27.985766 19.625398 37.343842
3 10.140420 25.301309 41.896450 ... 20.173079 32.241763 18.523634
4 9.368331 9.228014 25.210365 ... 10.518585 18.039020 17.464249
现在,当我只想获取小于12的数据帧的值(通过简单地添加)时,我得到布尔值的表,result2=result<12
result2:
0 1 2 3 4 ... 8 9 10 11 12
0 True False False True True ... False False False False False
1 False True False False True ... False False False False False
2 False False True False False ... True False False False False
3 True False False True False ... False True False False False
4 True True False False True ... False False True False False
其中我只想要小于12且不等于零的值。你能帮忙吗?
幕布斯6054654
德玛西亚99
相关分类