我有以下形式的数据框:
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...
基本上,格式是:
Row Column Value
我希望以这种方式转换数据,以便能够将其输入 Cytoscape 以绘制图表。
pandas 中是否有任何内置函数可用于此转换?
请您参考如下方法:
您可以使用 stack与 reset_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
