gpt4 book ai didi

python - Pandas :过滤多列

转载 作者:行者123 更新时间:2023-11-28 19:33:11 29 4
gpt4 key购买 nike

<分区>

我在 Pandas 中工作,我想将多个过滤器应用于跨多个字段的数据框。

我正在处理另一个更复杂的数据框,但我正在简化这个问题的上下文。这是示例数据框的设置:

dates = pd.date_range('20170101', periods=16)
rand_df = pd.DataFrame(np.random.randn(16,4), index=dates, columns=list('ABCD'))

对这个数据框应用一个过滤器是有据可查的,而且很简单:

rand_df.loc[lambda df: df['A'] < 0]

因为 lambda 看起来像一个简单的 bool 表达式。很想做以下事情。这是行不通的,因为它不是 bool 表达式,而是可调用的。其中的多个不能像 bool 表达式那样组合:

rand_df.loc[lambda df: df['A'] < 0 and df[‘B’] < 0]

---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-31-dfa05ab293f9> in <module>()
----> 1 rand_df.loc[lambda df: df['A'] < 0 and df['B'] < 0]

我找到了两种成功实现它的方法。我会将它们添加到潜在的答案中,因此您可以直接将它们作为解决方案进行评论。但是,我想征求其他方法,因为我不太确定这两种方法是否是过滤 Pandas 数据框的非常标准的方法。

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com