如何使用 python 在数据框中将列中的每个元素移动 n 个范围?
How to move every element in a column by n range in a dataframe using python?
我有一个数据框 df,如下所示:
No A B value
1 23 36 1
2 45 23 1
3 34 12 2
4 22 76 NaN
...
我想将 "value" 列中的每个值移动 2。第一行 "value" 不应移动。
我已经尝试过正常的移位,它直接将所有内容移位2
df['value']=df['value'].shift(2)
我希望得到以下结果:
No A B value
1 23 36 1
2 45 23 Nan
3 34 12 Nan
4 22 76 1
5 10 12 Nan
6 34 2 Nan
7 21 11 2
...
你的情况
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
我有一个数据框 df,如下所示:
No A B value
1 23 36 1
2 45 23 1
3 34 12 2
4 22 76 NaN
...
我想将 "value" 列中的每个值移动 2。第一行 "value" 不应移动。
我已经尝试过正常的移位,它直接将所有内容移位2
df['value']=df['value'].shift(2)
我希望得到以下结果:
No A B value
1 23 36 1
2 45 23 Nan
3 34 12 Nan
4 22 76 1
5 10 12 Nan
6 34 2 Nan
7 21 11 2
...
你的情况
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