如何在Pandas DataFrame中移动列

我想在Pandas中移动一列DataFrame,但是我无法在不重写整个DF的情况下从文档中找到一种方法来做到这一点。有人知道怎么做吗?数据框:


##    x1   x2

##0  206  214

##1  226  234

##2  245  253

##3  265  272

##4  283  291

所需的输出:


##    x1   x2

##0  206  nan

##1  226  214

##2  245  234

##3  265  253

##4  283  272

##5  nan  291


森栏
浏览 2287回答 3
3回答

隔江千里

In [18]: aOut[18]:    x1  x20   0   51   1   62   2   73   3   84   4   9In [19]: a.x2 = a.x2.shift(1)In [20]: aOut[20]:    x1  x20   0 NaN1   1   52   2   63   3   74   4   8

至尊宝的传说

您需要在此处使用df.shiftdf.shift(i)将整个数据帧下移i个单位。所以对于我= 1输入:    x1   x2  0  206  214  1  226  234  2  245  253  3  265  272    4  283  291输出:    x1   x20  Nan  Nan   1  206  214  2  226  234  3  245  253  4  265  272 因此,运行此脚本以获取预期的输出import pandas as pddf = pd.DataFrame({'x1': ['206', '226', '245',' 265', '283'],                    'x2': ['214', '234', '253', '272', '291']})print(df)df['x2'] = df['x2'].shift(1)print(df)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python