使用python pandas转置csv结构

时间:2013-04-16 08:55:16

标签: csv python-2.7 pandas

我有以下csv结构:

'Country'    '1960'    '1961'    '1962'
AUS          450        567       723
NZ                      125       320
IND          350        375       395
SL        
PAK          100        115       218

使用Python Pandas如何将上述结构转换(转置)为以下结构?

'Country'   'Year'   'Value'
AUS          1960     450
AUS          1961     567
AUS          1962     723
NZ           1960   
NZ           1961     125
...

我尝试使用枢轴是徒劳的。

1 个答案:

答案 0 :(得分:6)

In [19]: df
Out[19]:
year     1960  1961  1962
Country
AUS       450   567   723
NZ        NaN   125   320
IND       350   375   395
SL        NaN   NaN   NaN
PAK       100   115   218

In [20]: df.stack().reset_index()
Out[20]:
   Country  year    0
0      AUS  1960  450
1      AUS  1961  567
2      AUS  1962  723
3       NZ  1961  125
4       NZ  1962  320
5      IND  1960  350
6      IND  1961  375
7      IND  1962  395
8      PAK  1960  100
9      PAK  1961  115
10     PAK  1962  218

显然NaN会在途中被丢弃。