假设我有一个名为col1的列的DataFrame。如果我想得到col1 =='a'的所有行,我可以用:
df[df.col1 == ‘a’]
如果我想要col1为'a'或'b'的行,我可以这样做:
df[(df.col1 == ‘a’) | (df.col1 == ‘b’)]
但我真的很喜欢这样做(语法上是非法的):
df[df.col1 in [‘a’, ‘b’, ‘c’]]
有没有合适的熊猫方法呢?
以下是我正在使用的内容:
sort_func = lambda x: x in [‘a’, ‘b’, ‘c’]
mask = df[‘col1’].apply(sort_func)
df[mask]
但是......有更好的方法吗?这让我很烦。
答案 0 :(得分:3)
使用isin()进行过滤
- (void)showLeaderboard{
GKGameCenterViewController* gameCenterController = [[GKGameCenterViewController alloc] init];
gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards;
gameCenterController.gameCenterDelegate = self;
[self.view.window.rootViewController presentViewController:gameCenterController animated:YES completion:nil];
}