我有一個熊貓數據框。我想'滯後'我的專欄之一。意思是,例如,將整個列'gdp'向上移動一個,然後刪除剩餘行底部的所有多餘數據,以便所有列再次具有相同的長度。python:將熊貓數據框中的列向上移動一個
df =
y gdp cap
0 1 2 5
1 2 3 9
2 8 7 2
3 3 4 7
4 6 7 7
df_lag =
y gdp cap
0 1 3 5
1 2 7 9
2 8 4 2
3 3 7 7
無論如何要做到這一點?
我有一個熊貓數據框。我想'滯後'我的專欄之一。意思是,例如,將整個列'gdp'向上移動一個,然後刪除剩餘行底部的所有多餘數據,以便所有列再次具有相同的長度。python:將熊貓數據框中的列向上移動一個
df =
y gdp cap
0 1 2 5
1 2 3 9
2 8 7 2
3 3 4 7
4 6 7 7
df_lag =
y gdp cap
0 1 3 5
1 2 7 9
2 8 4 2
3 3 7 7
無論如何要做到這一點?
In [44]: df.gdp = df.gdp.shift(-1)
In [45]: df
Out[45]:
y gdp cap
0 1 3 5
1 2 7 9
2 8 4 2
3 3 7 7
4 6 NaN 7
In [46]: df[:-1]
Out[46]:
y gdp cap
0 1 3 5
1 2 7 9
2 8 4 2
3 3 7 7
移柱GDP同比:
df.gdp = df.gdp.shift(-1)
,然後取下最後一排
df.gdp = df.gdp.shift(-1) ## shift up
df.gdp.drop(df.gdp.shape[0] - 1,inplace = True) ## removing the last row
經典。包括刪除最後一行的答案。好答案! –