Python 从数据帧中的列中减去常数
我有一个数据框,如下所示:Python 从数据帧中的列中减去常数,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有一个数据框,如下所示: year,value 1970,2.0729729191557147 1971,1.0184197388632872 1972,2.574009084167593 1973,1.4986879160266255 1974,3.0246498975934464 1975,1.7876222478238608 1976,2.5631745148930913 1977,2.444014336917563 1978,2.619502688172043 1979,2.26827
year,value
1970,2.0729729191557147
1971,1.0184197388632872
1972,2.574009084167593
1973,1.4986879160266255
1974,3.0246498975934464
1975,1.7876222478238608
1976,2.5631745148930913
1977,2.444014336917563
1978,2.619502688172043
1979,2.268273809523809
1980,2.6086169818316645
1981,0.8452720174091145
1982,1.3158922171018947
1983,-0.12695212493599603
1984,1.4374230626622169
1985,2.389290834613415
1986,2.3489311315924217
1987,2.6002265745007676
1988,1.2623717711036955
1989,1.1793426779313878
我想从第二列中的每个值中减去一个常数。这是我尝试过的代码:
df = pd.read_csv(f1, sep=",", header=0)
df2 = df["value"].subtract(1)
但是,当我这样做时,df2变成:
70 1.072973
71 0.018420
72 1.574009
73 0.498688
74 2.024650
75 0.787622
76 1.563175
77 1.444014
78 1.619503
79 1.268274
80 1.608617
81 -0.154728
82 0.315892
83 -1.126952
84 0.437423
85 1.389291
86 1.348931
87 1.600227
88 0.262372
89 0.179343
年份只变成最后两位数。如何保留年份的所有数字?我认为列
年份
未修改,只需分配回减值:
df["value"] = df["value"].subtract(1)
我认为,
year
列未被修改,只需分配回减值:
df["value"] = df["value"].subtract(1)