2015-09-15 202 views
0

我有变量数据帧:id, 2001a, 2001b, 2002a, 2002b, 2003a, 2003b, etc.重塑/枢大熊猫据帧

我试图想出一个办法来透视数据,因此变量为:id, year, a, b

的16.2文档是指一些整形和但是这似乎更多地是针对分层专栏。

有什么建议吗?

我正在考虑建立一个分层数据帧,但我不知道如何在原有的变量名year映射到创建分层列

样品DF:

id 2001a 2001b 2002a 2002b 2003a etc. 
1 242 235 5735 23 1521 
2 124 168 135 1361 1 
3 436 754 1  24 5124 
etc. 
+0

你可以给你一个'DataFrame'的例子吗? – Romain

+0

@RomainX。当然!编辑 – As3adTintin

回答

1

这里是一个办法创建分层列。

df = pd.DataFrame({'2001a': [242,124,236], 
        '2001b':[242,124,236], 
        '2002a': [242,124,236], 
        '2002b': [242,124,236], 
        '2003a': [242,124,236]}) 
df.columns = df.columns.str.split('(\d+)', expand=True) 
df 

    2001  2002  2003 
    a b a b a 
0 242 242 242 242 242 
1 124 124 124 124 124 
2 236 236 236 236 236 
+0

哦...好吧......那正是我在寻找的......谢谢!现在我所要做的就是把这些年移到一个专栏,但我认为这应该很容易做w/pivot/reshape – As3adTintin