我有一个像这样的表
username result sum
user_c 0.20 10
user_a 0.70 100
user_b 0.40 100
user_l 0.43 120
user_e 0.30 130
user_j 0.72 130
user_f 0.25 140
user_h 0.47 140
user_k 0.65 150
user_g 0.43 170
user_d 0.60 200
我想从列 sum 中减去2,但仅从第二行到第五行,我该怎么做?
答案 0 :(得分:2)
IUC:
df.iloc[1:5,2] = df.iloc[1:5,2] - 2
输出:
username result sum
0 user_c 0.20 10
1 user_a 0.70 98
2 user_b 0.40 98
3 user_l 0.43 118
4 user_e 0.30 128
5 user_j 0.72 130
6 user_f 0.25 140
7 user_h 0.47 140
8 user_k 0.65 150
9 user_g 0.43 170
10 user_d 0.60 200
答案 1 :(得分:2)
您可以尝试以下方法:
df.iloc[2:6] = df.iloc[2:6]['sum'].apply(lambda x: x - 2)
此切片还将包括您的第五行。如果您不想包括第5行,则必须切片df.iloc[2:5]
。