我有以下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 ...
我尝试使用枢轴是徒劳的。
答案 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会在途中被丢弃。