转置csv文件

kes*_*haw 0 python csv pandas

我有一个csv文件,其中的数据是这样的

col1,col2,col3,col4,col5
 A,1,3,5,6
 B,2,3,4,5
Run Code Online (Sandbox Code Playgroud)

我想像这样转置这个文件:

col1,col6,col7
 A,Col1,1
 A,col2,3
 A,col3,5
Run Code Online (Sandbox Code Playgroud)

我正在使用python 2.7.我可以使用python pandas吗?

Sco*_*ton 6

用途melt:

df.melt(id_vars='col1', var_name='col6', value_name='col7')
Run Code Online (Sandbox Code Playgroud)

输出:

  col1  col6  col7
0    A  col2     1
1    B  col2     2
2    A  col3     3
3    B  col3     3
4    A  col4     5
5    B  col4     4
6    A  col5     6
7    B  col5     5
Run Code Online (Sandbox Code Playgroud)

选项2使用set_indexstack:

df.set_index('col1').rename_axis('col6', 1).stack().reset_index(name='col7')
Run Code Online (Sandbox Code Playgroud)

输出:

  col1  col6  col7
0    A  col2     1
1    A  col3     3
2    A  col4     5
3    A  col5     6
4    B  col2     2
5    B  col3     3
6    B  col4     4
7    B  col5     5
Run Code Online (Sandbox Code Playgroud)