繁体   English   中英

根据 pandas 中的多个条件过滤掉行

[英]Filter out rows based on multiple conditions in pandas

我可以使用以下代码识别要从 dataframe 中删除的行:

df[(df.Year.isin(range(200,205))) & (df.id== 'string')]

如何从 dataframe 中删除这些行?

我尝试了以下解决方案,但没有奏效:

df.drop[(df.Year.isin(range(200,205))) & (df.id== 'string'), axis = 0]

您也可以按索引删除行

df.drop(df[(df.Year.isin(range(200,205))) & (df.id== 'string')].index, inplace=True)

@JoshFriedlander 建议的另一种方式

df = df[~((df.Year.isin(range(200,205))) & (df.id== 'string'))]

我的 go 的解决方案是:

df = df[(df['year'] >= 200) & (df['year'] <= 205) & (df['id'] == 'string')]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM