我有一个数据 df
在使用 pandas.read_table
从 csv 文件构建的熊猫中。数据框有几列,它由其中一列索引(这是唯一的,因为每一行都有一个用于索引的列的唯一值。)
如何根据应用于多列的“复杂”过滤器选择数据框的行?我可以轻松地选择列 colA
大于 10 的数据帧切片,例如:
df_greater_than10 = df[df["colA"] > 10]
但是,如果我想要一个像这样的过滤器怎么办:选择 df
的切片,其中 任何 列都大于 10?
或者 colA
的值大于 10 但 colB
的值小于 5?
这些在熊猫中是如何实现的?谢谢。
原文由 user248237 发布,翻译遵循 CC BY-SA 4.0 许可协议
我鼓励您在 邮件列表 中提出这些问题,但无论如何,使用底层 NumPy 数组仍然是非常低级的事情。例如,要选择任何列中的值超过 1.5 的行,在此示例中:
必须使用
&
或|
组合多个条件(和括号!):我很想拥有某种查询 API 来简化这些事情