如何在一个pandas数据库中删除与另一个对象(坐标)距离在3个单位以内的对象(坐标)?

2024-09-27 07:18:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个数据帧,每个数据帧包含一组坐标(x,y)。一个比另一个短得多。我想省略较长数据库中与较短数据库中的对象在一定距离内的所有对象

基本上,我想在较短数据库中的每个点周围定义一个直径为3的圆,并省略较大数据库中位于这些圆内的所有点。首先,我使用for循环并在每个点周围制作正方形(边长3),这大致起作用,但我不知道如何修改它,以便忽略特定半径内的对象

这是我试图修复的正方形的代码

L和B是(x,y)坐标,LAT是较长的数据库,HE是较短的数据库

for i in np.arange(0,HE.shape[0],1):
   NEW = LAT[ (LAT['B'] > (HE['B'].iloc[i] + 1.5) ) | (LAT['B'] < (HE['B'].iloc[i] - 1.5)) & (LAT['L'] > (HE['L'].iloc[i] + 1.5) ) | (LAT['L'] < (HE['L'].iloc[i] - 1.5))]

它可以切割正方形,但这不是我需要的


Tags: 数据对象代码数据库距离for定义半径

热门问题