对数据框列重新排序

fra*_*o_b 1 python csv pandas

有没有办法从 txt 文件对 Pandas 数据框中的列进行排序:

pandas.DataFrame.read_table
Run Code Online (Sandbox Code Playgroud)

例如,从 csv 文件中,使用:

pandas.DataFrame.to_csv
Run Code Online (Sandbox Code Playgroud)

您可以传递订单列

columns
Run Code Online (Sandbox Code Playgroud)

或者一般来说,有没有办法对数据框列重新排序?也许使用 .ix 模块?

unu*_*tbu 5

您可以使用索引对列重新排序。例如,

In [119]: df = pd.DataFrame(np.arange(24).reshape(6,4), columns=list('ABCD'))

In [120]: df
Out[120]: 
    A   B   C   D
0   0   1   2   3
1   4   5   6   7
2   8   9  10  11
3  12  13  14  15
4  16  17  18  19
5  20  21  22  23

In [121]: df[list('CDAB')]
Out[121]: 
    C   D   A   B
0   2   3   0   1
1   6   7   4   5
2  10  11   8   9
3  14  15  12  13
4  18  19  16  17
5  22  23  20  21
Run Code Online (Sandbox Code Playgroud)

因此,只需像往常一样使用 读取数据pd.read_table,然后使用 重新排序列

df = df[['col1', 'col2', ...]]
Run Code Online (Sandbox Code Playgroud)