当前位置: 首页 > 知识库问答 >
问题:

Pandas错误-使用iloc[duplicate]时,序列的真值不明确

漆雕修德
2023-03-14

我正在使用pandas数据框,并尝试选择yearID==2001team_IDx=='OAK'所在的行。yearID列是int类型,而team_IDx是一个对象。下面是我使用的表达式:

mergeddf.loc[(mergeddf['yearID'] == 2001 & mergeddf['teamID_x'] == 'OAK')]

但我一直在犯错误:

TypeError: cannot compare a dtyped [object] array with a scalar of type [bool]

我是初学者,甚至不知道如何表达我的问题。我看过其他关于堆栈溢出的答案,但它们对我来说没有意义。这个错误是什么意思?我应该知道哪些潜在的概念才能自己理解它?我该如何解决这个问题?

共有1个答案

曾飞沉
2023-03-14

这是由于位运算符的运算符优先级高于逻辑运算符。在每个条件周围需要另一层括号:

mergeddf.loc[((mergeddf['yearID'] == 2001) & (mergeddf['teamID_x'] == 'OAK'))]
 类似资料: