尽管值存在,但无法在数据框中搜索值

cannot search value in dataframe althought the value exists

我有一个包含位置数据的数据框。我知道某个位置存在一个值,我什至知道它的索引位置。当我使用索引位置进行搜索时,值会正确显示,但如果我使用其他列(纬度和经度)的组合进行搜索,则不会显示该值。 我附上下面的截图。

这里我知道 lat 31.92 和 lon 76.66 在索引 2656536 处。当我使用 lat 和 lon 进行子集化时,结果为空。结果应该是如图所示

PS 这只发生在某些值 (10%) 而不是全部

问题出在浮点数的精度上,所以我们需要使用numpy.isclose:

df[(np.isclose(df.lat, 31.92)) & (np.isclose(df.lon, 76.66))]