Sta*_*cey 6 python dataframe pandas
我有一个数据框df
,其中包含以下列数据标题:
date A B C D E F G H I
07/03/2016 2.08 1 NaN NaN 1029 2 2.65 4861688 -0.0388
08/03/2016 2.20 1 NaN NaN 1089 2 2.20 5770819 -0.0447
: :
09/03/2016 2.14 1 NaN NaN 1059 2 2.01 5547959 -0.0514
10/03/2016 2.25 1 NaN NaN 1089 2 1.95 4064482 -0.0520
Run Code Online (Sandbox Code Playgroud)
有没有办法改变列的顺序,以便将列F移动到列H之后的位置.结果df
将如下所示:
date A B C D E F G H F I
07/03/2016 2.08 1 NaN NaN 1029 2 2.65 4861688 2 -0.0388
08/03/2016 2.20 1 NaN NaN 1089 2 2.20 5770819 2 -0.0447
: :
09/03/2016 2.14 1 NaN NaN 1059 2 2.01 5547959 2 -0.0514
10/03/2016 2.25 1 NaN NaN 1089 2 1.95 4064482 2 -0.0520
Run Code Online (Sandbox Code Playgroud)
使用df.insert
withdf.columns.get_loc
动态确定插入的位置。
col = df['F'] # df.pop('F') # if you want it removed
df.insert(df.columns.get_loc('H') + 1, col.name, col, allow_duplicates=True)
Run Code Online (Sandbox Code Playgroud)
df
date A B C D E F G H F I
0 07/03/2016 2.08 1 NaN NaN 1029 2 2.65 4861688 2 -0.0388
1 08/03/2016 2.20 1 NaN NaN 1089 2 2.20 5770819 2 -0.0447
...
Run Code Online (Sandbox Code Playgroud)
用这个 :
df = df[['date','A','B','C','D','E','F','G','H','F','I']]
Run Code Online (Sandbox Code Playgroud)
-编辑
columnsName = list(df.columns)
F, H = columnsName.index('F'), columnsName.index('H')
columnsName[F], columnsName[H] = columnsName[H],columnsName[F]
df = df[columnsName]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6955 次 |
最近记录: |