gpt4 book ai didi

python - 将邻接矩阵转换为 csv 文件

转载 作者:太空宇宙 更新时间:2023-11-04 05:46:54 27 4
gpt4 key购买 nike

我想使用 python(或可能是 R)将 ARACNE 的邻接矩阵输出转换为 csv 文件。

adj 文件设置为右侧显示一个基因及其与其他基因的每个相互作用。例如:

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等。

我想改变布局,这样我就可以...

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 并绘制网络。

最佳答案

使用 csv 模块的简单方法 -

import csv
with open('<inputfile>','r') as f , open('<outputfile>','w') as of:
reader = csv.reader(f, delimiter=' ')
writer = csv.writer(of, delimiter=' ')
for lines in reader:
key = lines.pop(0)
for i in range(0,len(lines),2):
writer.writerow([key, lines[i], lines[i+1]])

示例/演示 -

我的a.csv -

A B 0.4 C 0.3
B C 0.1 E 0.4
C D 0.2 E 0.3

代码-

>>> import csv
>>> with open('a.csv','r') as f , open('b.csv','w') as of:
... reader = csv.reader(f, delimiter=' ')
... writer = csv.writer(of, delimiter=' ')
... for lines in reader:
... key = lines.pop(0)
... for i in range(0,len(lines),2):
... writer.writerow([key, lines[i], lines[i+1]])

输出到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

关于python - 将邻接矩阵转换为 csv 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31837035/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com