我在过滤pandas
数据帧时遇到问题。
city
NYC
NYC
NYC
NYC
SYD
SYD
SEL
SEL
...
df.city.value_counts()
我想删除计数频率少于4个的城市行,例如SYD和SEL。
如果不按城市逐个手动删除它们,该怎么办?
最佳答案
在这里,你去过滤器
df.groupby('city').filter(lambda x : len(x)>3)
Out[1743]:
city
0 NYC
1 NYC
2 NYC
3 NYC
解决方案二
transform
sub_df = df[df.groupby('city').city.transform('count')>3].copy()
# add copy for future warning when you need to modify the sub df
关于python - Python:在计数条件下删除行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49735683/