Python 如何检测数据帧中几乎重复的位置?

Python 如何检测数据帧中几乎重复的位置?,python,pandas,geolocation,Python,Pandas,Geolocation,我有一个包含地理编码地址的熊猫数据帧。我想检测任何具有几乎相同纬度和经度的地址,例如,在纬度和经度的0.0001度范围内。我想在一个新字段中记录结果:“可能重复”或“唯一” 这里有一个例子。鉴于以下情况: ID Latitude Longitude A 31.26418 -86.36509 B 44.52456 -79.52941 C 45.48913 -87.77436 D 54.03550 -85.87823 E 37.05611 -

我有一个包含地理编码地址的熊猫数据帧。我想检测任何具有几乎相同纬度和经度的地址,例如,在纬度和经度的0.0001度范围内。我想在一个新字段中记录结果:“可能重复”或“唯一”

这里有一个例子。鉴于以下情况:

ID  Latitude    Longitude
A   31.26418    -86.36509
B   44.52456    -79.52941
C   45.48913    -87.77436
D   54.03550    -85.87823
E   37.05611    -83.53684
F   53.26993    -85.28143
G   45.48910    -87.77440
H   51.60626    -83.33459
输出应为:

ID  Latitude    Longitude   Status
A   31.26418    -86.36509   Unique
B   44.52456    -79.52941   Unique
C   45.48913    -87.77436   Possible Duplicate
D   54.03550    -85.87823   Unique
E   37.05611    -83.53684   Unique
F   53.26993    -85.28143   Unique
G   45.48910    -87.77440   Possible Duplicate
H   51.60626    -83.33459   Unique
注意:这不是一个组合类型的问题,例如:


最符合Python的方法是什么?

您可以将纬度和经度值四舍五入到小数点后4位(如您所建议的,直到0.0001),然后继续检查重复项

df['Status'] = 'Unique'
df.loc[df[df.loc[:, ['Latitude', 'Longitude']].round(4).duplicated(keep=False)].index, 'Status'] = 'Possible duplicate'

仅在目标列上可能重复执行
drop_duplicates()
。要获得具体帮助,请用更多描述支持您的问题,提供示例数据、解决方法和预期输出。另外,请看一下@RahulAgarwal似乎不是重复的,因为为该问题提供的任何解决方案都不能应用于此problem@meW添加的示例-Thanks@meW我需要它显示任何可能有重复项的行,例如
C
g
的重复项,反之亦然,
G
C
的复制品!这是一个真正惊人的一行代码!