我正在尝试使用布尔表达式在 pandas 系列的索引上过滤,该索引包含字符串。例如,在下面的代码中,我希望通过筛选另一个系列 (S) 中索引项包含子字符串 'man' 的行来创建一个新系列 (Sman):
from pandas import Series
S = Series({'moondog':12,'catman':23, 'batman':31, 'catdog':42})
Sman = S['man' in S]
然而,对于Sman的结果只是数字31,并没有像我希望的那样包含'catman'和'batman'的行的新系列。
我错在哪里了?
'man'
返回了False,所以你实际上执行了S[False]
,我认为它将第一个值作为0(如果我运行它,则确实是31个蝙蝠侠)。顺便说一句,如果问题已经解决,你应该接受答案来标记你的问题已解决(也适用于你的其他问题)。 - joris