熊猫根据另一列中的条件选择前10个值



我已经写了下面的内容,它可以从ColA中获得前10个值。

top10_contacts = df['ColA'].value_counts().head(10).index

但是,现在我只想从ColA中为ColB中的值为False的行选择前10个值。所以我写了下面的,但我得到了一个错误,说ColA-不确定什么是正确的语法,有人能帮忙吗?

top10_contacts = df[df['ColB'] != True][df['ColA'].value_counts().head(10).index]

IIUC这就是您想要的:

df.loc[df.ColB == False, 'ColA'].value_counts().head(10).index

或者等效地:

df.loc[~df.ColB, 'ColA'].value_counts().head(10).index

最新更新