【发布时间】:2016-10-26 08:00:35
【问题描述】:
之前已发布过问题,但未正确传达要求。我有一个包含 1000 多列的 csv 文件:
A B C D .... X Y Z
1 0 0.5 5 .... 1 7 6
2 0 0.6 4 .... 0 7 6
3 0 0.7 3 .... 1 7 6
4 0 0.8 2 .... 0 7 6
这里 X , Y 和 Z 是第 999, 1000, 10001 列, A, B, C , D 是第 1,2,3 和 4 列。我需要以这样的方式对列进行重新排序,以便为我提供以下信息。
D Y Z A B C ....X
5 7 6 1 0 0.5 ....1
4 7 6 2 0 0.6 ....0
3 7 6 3 0 0.7 ....1
2 7 6 4 0 0.8 ....0
即第 4 列变为第 1 列,第 1000 列和第 1001 列变为第 2 和第 3 列,其他列相应地向右移动。
【问题讨论】:
-
您能否展示您的尝试以及为什么许多related 问题无法回答您的问题?这只需要您重新排序列索引,然后通过传递新顺序
reindexdf -
使用 Excel 或等效的开源软件
-
@EdChum,是的,但是有一千列。我如何重新排序这么多列。有通用的方法吗? python新手
-
@EdChum,
import pandas as pd df = pd.read_csv('test.csv') ncols = df.columns.tolist() cols = ncols[-1:] + ncols[:-1] df[cols].to_csv('test1.csv',index=False)此代码将最后一列带到第一列。但我被困在如何重新排序随机列
标签: python python-2.7 csv numpy pandas