Pandas:如果特定列满足特定条件,则选择行
Posted
技术标签:
【中文标题】Pandas:如果特定列满足特定条件,则选择行【英文标题】:Pandas: select rows if a specific column satisfies a certain condition 【发布时间】:2017-04-30 01:34:52 【问题描述】:假设我有这个数据框df
:
A B C
0 1 1 2
1 2 2 2
2 1 3 1
3 4 5 2
假设您要选择列C
为>1
的所有行。如果我这样做:
newdf=df['C']>1
我只在结果df中获得True
或False
。相反,在给出的示例中,我想要这个结果:
A B C
0 1 1 2
1 2 2 2
3 4 5 2
你会怎么做?你建议使用iloc
吗?
【问题讨论】:
【参考方案1】:使用boolean indexing
:
newdf=df[df['C']>1]
【讨论】:
这个和 piRSquared 的答案完美地工作。我更喜欢这个,因为更容易记住【参考方案2】:使用query
df.query('C > 1')
【讨论】:
以上是关于Pandas:如果特定列满足特定条件,则选择行的主要内容,如果未能解决你的问题,请参考以下文章
Pandas:如何根据特定列上特定值的条件选择数据框中的行[重复]
如何使用多个布尔条件选择 Pandas DataFrame 中的特定列