gpt4 book ai didi

python - 多种条件下的 Pandas 面具

转载 作者:行者123 更新时间:2023-12-04 01:43:58 25 4
gpt4 key购买 nike

在我的数据框中,我想用 nan 替换低于 1 和高于 5 的每个值。

此代码有效

persDf = persDf.mask(persDf < 1000)

我得到了作为 nan 的所有值(value),但这个没有:
persDf = persDf.mask((persDf < 1) and (persDf > 5))

我不知道为什么会这样。我已经检查了手册页和关于明显类似问题的不同解决方案,但找不到解决方案。有没有人有想法可以帮助我解决这个问题?

最佳答案

使用 |运算符,因为值不能是 < 1> 5 :

persDf = persDf.mask((persDf < 1) | (persDf > 5))

另一种方法是使用 np.where并在内部调用它 pd.DataFrame :
pd.DataFrame(data=np.where((df < 1) | (df > 5), np.NaN, df), 
columns=df.columns)

关于python - 多种条件下的 Pandas 面具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56093625/

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