我不确定你想要什么,最后一行代码也无济于事,但是无论如何:
“链式”过滤是通过“链接”布尔索引中的条件来完成的。
In [96]: dfOut[96]: A B C Da 1 4 9 1b 4 5 0 2c 5 5 1 0d 1 3 9 6In [99]: df[(df.A == 1) & (df.D == 6)]Out[99]: A B C Dd 1 3 9 6
如果要链接方法,可以添加自己的mask方法并使用该方法。
In [90]: def mask(df, key, value): ....: return df[df[key] == value] ....:In [92]: pandas.Dataframe.mask = maskIn [93]: df = pandas.Dataframe(np.random.randint(0, 10, (4,4)), index=list('abcd'), columns=list('ABCD'))In [95]: df.ix['d','A'] = df.ix['a', 'A']In [96]: dfOut[96]: A B C Da 1 4 9 1b 4 5 0 2c 5 5 1 0d 1 3 9 6In [97]: df.mask('A', 1)Out[97]: A B C Da 1 4 9 1d 1 3 9 6In [98]: df.mask('A', 1).mask('D', 6)Out[98]: A B C Dd 1 3 9 6


