我有一个像这样的CSV文件中的数据列表:

python - 数据框内的比较-LMLPHP

我希望找到其值在一定间隔内的所有成员的列表。对于前。从随附的数据集中,找到powerlevels位于675000和750000之间的所有战士的列表。

在下面的代码中,输入运算符“和”,“或”,“&”,“ |”无法正常工作,并返回ValueError

strong = df[['name', 'attack', 'defense', 'HP','armour','powerlevel']][df.powerlevel > 675000 & df.powerlevel < 750000]
print(strong)


我收到以下错误-


  ValueError:系列的真值不明确。使用a.empty,a.bool(),a.item(),a.any()或a.all()。


如何解决这个问题,而不必每次都创建一个不同的数据框?

最佳答案

您可以使用loc

strong = df.loc[(df.powerlevel > 675000) & (df.powerlevel < 750000)]
strong = strong[['name', 'attack', 'defense', 'HP','armour','powerlevel']]

10-06 13:46