我试图过滤列中的特定值,但也允许输入错误。我认为使用SequenceMatcher是一个很好的解决方案,但我不知道在数据帧中应用它的最佳方法是什么。假设标题是“number”和“location”
df1 = [[1, Amsterdam], [2, amsterdam], [3, rotterdam], [4, amstrdam], [5, Berlin]]
如果我想以一定的比率过滤“阿姆斯特丹”,比如说0.6。输出可能是这样的
df1 = [[1, Amsterdam], [2, amsterdam], [4, amstrdam]]
完成这项工作的最佳方式是什么?我在考虑使用一个过滤器选项,但是没有用。我是否需要首先运行apply函数来添加一个具有比率的列,然后才能对其进行筛选?还是有更聪明的方法
df2 = df1[SequenceMatcher(None, location, df1.location).ratio() > 0.6]
您的思路是正确的,使用
apply
和loc
可以过滤df。我已经把这个比率定为0.7,否则鹿特丹也会被匹配相关问题 更多 >
编程相关推荐