在pandas数据框中移动整个列
我想把整个列向右移动,把第一列填充为NAN(缺失值),然后删除最后一列:
df0: A B C D
2013-12-31 10 6 6 5
2014-01-31 11 7 5 5
2014-02-28 15 8 8 8
变成
df1: A B C D
2013-12-31 NaN 10 6 6
2014-01-31 NaN 11 7 5
2014-02-28 NaN 15 8 8
我的解决办法是把列拆分成Series(序列),然后再把它们组合成一个数据框。有没有更有效的方法呢?
1 个回答
3
shift 是一个可以让数据按行移动的功能。这里有个小技巧。
df.T.shift().T
更新
当把轴设置为1时会出现一个错误,这个问题在当前的开发版本中已经解决了。如果你使用的是最新版本,可以用
df.shift(axis=1)
来代替。