gpt4 book ai didi

python - Pandas:使用方法链修改单元格值

转载 作者:太空宇宙 更新时间:2023-11-03 14:09:18 25 4
gpt4 key购买 nike

>>> df
a b c ...
0 1 2
1 3 4
. ...

我希望 b 列加倍。我知道这个方法

>>> df['b'] *= 2

我能否以方法链方式执行此操作?我想更可恶!像这样。

>>> (df.drop('c', 1)
.someMethodToReplaceBColumnValues())

我有很多方法来清理数据,这是操作之一,我一直坚持这一点。我遇到过 replaceset_value 等。但我不知道如何操作。

我也尝试了 apply 方法,但它只返回应用操作的列。所以我只得到带有 apply 方法的 b 列。如何进一步接近?

最佳答案

你可以试试assign :

df = pd.DataFrame({'a':[1,2,3],
'b':[4,5,6],
'c':[7,8,9]})

print (df)
a b c
0 1 4 7
1 2 5 8
2 3 6 9

print (df.drop('c', 1).assign(b=df.b*2))
a b
0 1 8
1 2 10
2 3 12

print (df.drop('c', 1).apply(lambda x: x * 2 if x.name == 'b' else x))
a b
0 1 8
1 2 10
2 3 12

关于python - Pandas:使用方法链修改单元格值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40288219/

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