如何用不等于操作符过滤Pandas DataFrame?遇KeyError问题求助
解决Pandas过滤时的KeyError: 'BoosterVersion'问题
报错
KeyError: 'BoosterVersion'的核心原因是你的DataFramedf中不存在名为BoosterVersion的列,先从列名问题入手排查:- 打印所有列名确认是否存在拼写错误:
重点检查大小写、空格或特殊字符差异,比如是否写成了print(df.columns.tolist())boosterversion或Booster Version。 - 如果列名存在但带有多余空格,先清理列名:
清理后再重新执行过滤代码。df.columns = df.columns.str.strip()
- 打印所有列名确认是否存在拼写错误:
确认列名无误后,也可以用更稳妥的写法实现过滤:
方法一:使用loc明确指定行和列范围data_falcon9 = df.loc[df['BoosterVersion'] != 'Falcon 1', :]方法二:使用
query语法简化逻辑data_falcon9 = df.query("BoosterVersion != 'Falcon 1'")
内容的提问来源于stack exchange,提问作者CartmanBrah
相关产品推荐
相关产品推荐

