我有一个与将邻接矩阵转换为csv文件中发布的类似问题
我想使用python(或可能是R)将ARACNE的邻接矩阵输出转换为csv文件。
设置adj文件可显示一个基因正确的一个,以及每个基因与其他基因的相互作用。例如,a.csv的文件为:
A B 0.4 C 0.3
B C 0.1 E 0.4
C D 0.2 E 0.3
因此,在上面,A和B彼此交互,并且该交互的值为0.4。A和C>>相互影响,值为0.3,依此类推。
我想更改布局,所以我将文件b.csv作为...
A B 0.4
A C 0.3
B C 0.1
B E 0.4
C D 0.2
C E 0.3
基本上,我想要一个所有交互节点和相应值的列表,以便可以将文件上传到Cytoscape并绘制网络。
在这篇文章中,使用Python有一个很棒的答案。如果我想将b.csv的格式转换回a.csv,该怎么办?我挠头,但找不到解决方案。我很想看看Python如何做到这一点!
谢谢回答。-小勇
这可以使用 pandas.Dataframe.groupby
import pandas as pd
df = pd.read_csv('b.csv', delimiter=' ', header=None)
data = ''
for key, value in df.groupby([0]):
for i,item in enumerate(value.values):
if i == 0:
data += item[0]
for itm in item[1:]:
data += ' '+str(itm)
data += '\n'
#Saving the string
with open('a.csv', 'w') as f:
f.write(data)
的数据b.csv
为:
A B 0.4
A C 0.3
B C 0.1
B E 0.4
C D 0.2
C E 0.3
C F 0.3
A D 0.3
生a.csv
成为:
A B 0.4 C 0.3 D 0.3
B C 0.1 E 0.4
C D 0.2 E 0.3 F 0.3
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句