gpt4 book ai didi

python - 数据帧上的 Pandas 数值操作(即 max())

转载 作者:行者123 更新时间:2023-11-28 21:42:20 25 4
gpt4 key购买 nike

所以我知道这在表面上看起来微不足道,但我想要做的实际上是不同的。

我有一个数据框:

x
1
3
4

我想对其进行操作,例如:

df['x']=df['x']+1

但我对此也有一个最大值,实际上是 min(4,val)

这将实现输出:

x
2
4
4

所以,在无效语法中,我想我想做的是:df['x']=np.min(df['x']+1,4) 但是这是行不通的。

除了做:

df['x']=df['x']+1
df[df['x']>4]['x']=4

有没有人有更优雅的解决方案?

谢谢

最佳答案

你可以使用剪辑:

(df['x'] + 1).clip(upper=4)

0 2
1 4
2 4
Name: x, dtype: int64

以下也可以:

np.minimum(df['x'] + 1, 4)

0 2
1 4
2 4
Name: x, dtype: int64

你所做的没有起作用,因为 np.min 需要一个数组。然而,np.minimum 比较两个值(或数组),因此它可以广播。

关于python - 数据帧上的 Pandas 数值操作(即 max()),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43733890/

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