我有一个数据框df,如下所示:
iPhone X, iPhone 8 and iPhone 6
我想将“值”列中的每个值都移2。并且第一行“值”不应该移。
我已经尝试过正常的换档,它可以直接将所有档次换成2。
No A B value
1 23 36 1
2 45 23 1
3 34 12 2
4 22 76 NaN
...
我希望得到以下结果:
df['value']=df['value'].shift(2)
答案 0 :(得分:3)
以您的情况
df['Newvalue']=pd.Series(df.value.values,index=np.arange(len(df))*3)
df
Out[41]:
No A B value Newvalue
0 1 23 36 1.0 1.0
1 2 45 23 1.0 NaN
2 3 34 12 2.0 NaN
3 4 22 76 NaN 1.0