在熊猫数据框中,当用户为Lucas时,我需要将所有值1990.0替换为2002.0:
User Val
Mirk 1992.0
Lucas 1990.0
John 1980.0
Lucas 1990.0
Mirk 1992.0
预期输出:
User Val
Mirk 1992.0
Lucas 2002.0
John 1980.0
Lucas 2002.0
Mirk 1992.0
我该怎么办?
答案 0 :(得分:2)
使用布尔索引:
df.loc[df.User.eq('Lucas') & df.Val.eq(1990), 'Val'] += 12
答案 1 :(得分:0)
您可以在Numpy中使用以下位置:
import numpy as np
df['Val'] = np.where((df['User'] == 'Lucas') & (df['Val'] == 1990), 2002, df['Val'])
答案 2 :(得分:0)
选中mask
df.Val.mask(df.User.eq('Lucas') & df.Val.eq(1990),2002,inplace=True)