2017-06-29 71 views
1

比方說,我有這樣的數據幀:如何在熊貓數據框的列名稱上添加數字?

Name Salary Field 
0 Megan 30000 Botany 
1 Ann 24000 Psychology 
2 John 24000 Police 
3 Mary 45000 Genetics 
4 Jay 60000 Data Science 

我想補充上面列名的一些0索引的數字,但我還希望保持的列名。我想要達到這種形式:

 0  1  2 
    Name Salary Field 
0 Megan 30000 Botany 
1 Ann 24000 Psychology 
2 John 24000 Police 
3 Mary 45000 Genetics 
4 Jay 60000 Data Science 

我該如何用熊貓和Python做到這一點?

+0

添加上面的數字將a)更改列名稱,或b)添加一個新的級別。無論如何,你將無法以相同的方式分割出一列。這可以嗎? –

+0

沒關係,謝謝你提到這會影響切片過程。 – Alex

回答

5

你並不需要創建一個新的數據框:

df.columns = pd.MultiIndex.from_tuples(list(enumerate(df))) 

正如預期的那樣:

#  0  1    2 
#  Name Salary   Field 
# 0 Megan 30000  Botany 
# 1 Ann 24000 Psychology 
# 2 John 24000  Police 
# 3 Mary 45000  Genetics 
# 4 Jay 60000 Data Science 

我希望這h ELPS。

+0

太好了,非常感謝! – Alex

3

這裏是一個快速的方式

new_df = pd.DataFrame(df.values, 
         columns = [ list(range(df.shape[1])), df.columns] 
        ) 

我敢肯定有一個更優雅的方式

+0

很好的解決方案,非常感謝! – Alex

相關問題