通过Python中的两个变量将面板数据wide转换为long



我在Python中有一个数据集,我正试图从这样一个广泛的数据集转换:

20072008>>
ID 名称
1 Andy 324412
2 Becky 123422
3 Lizzie

不能使用pivot,因为这实际上是一个melt操作:

out = (df.melt(
id_vars=["ID", "Name"], 
value_vars=["2007", "2008"], 
var_name="Year", 
value_name="Var"
)
.sort_values(["ID", "Year"]))
print(out)
ID    Name  Year  Var
0   1    Andy  2007  324
3   1    Andy  2008  412
1   2   Becky  2007  123
4   2   Becky  2008  422
2   3  Lizzie  2007  332
5   3  Lizzie  2008  564

最新更新