2016-05-12 92 views
1

我有以下形式的數據幀:轉換一個大熊貓數據幀以矩陣的形式插入到表

P Q R S 
A 0 2 1 1 
B 2 0 1 1 
C 1 1 0 0 
D 1 1 0 0 

我希望將其更改爲以下形式:

A P 0 
A Q 2 
A R 1 
A S 1 
B P 2 
B Q 0 
B R 1 
B S 1 and so on... 

基本上,fomat是:

Row Column Value 

我期待以這種方式轉換數據,以便能夠將其送入Cytoscape以繪製圖形。

有沒有熊貓中的任何內置功能,我可以使用這種轉換?

+0

你能添加更多的行/列?目前還不清楚你想如何繼續...... – MaxU

+0

相應地更新了相應的問題 – kurious

回答

4

您可以使用stackreset_index

df = df.stack().reset_index() 
df.columns = ['a','b','c'] 
print df 
    a b c 
0 A P 0 
1 A Q 2 
2 A R 1 
3 A S 1 
4 B P 2 
5 B Q 0 
6 B R 1 
7 B S 1 
8 C P 1 
9 C Q 1 
10 C R 0 
11 C S 0 
12 D P 1 
13 D Q 1 
14 D R 0 
15 D S 0