




Насколько я знаю о Cytoscape, не существует простых способов импортировать матрицу путаницы в Cytoscape. Хотя, возможно, некоторые приложения поддерживают это.
Самое простое, что можно сделать, это преобразовать вашу матрицу в подходящий формат, например, используя следующий скрипт.
Затем вы сможете импортировать полученный CSV-файл напрямую в Cytoscape, даже перетаскивая его на сетевую панель.
#!/usr/bin/python
import sys
DELIMITER = ","
NO_INTERACTION_VALUE = "0"
if len(sys.argv) != 2:
print("Please use as follow sh ./matrix-to-list.py <file-to-convert>")
sys.exit(1)
to_convert_name = sys.argv[1]
result_name = ".".join(to_convert_name.split(".")[:-1]) + "-converted.csv"
output = []
with open(to_convert_name, "r") as to_convert:
rows = [[value.strip() for value in row.split(DELIMITER)] for row in to_convert.readlines()]
ids = rows[0][1:]
for i in range(len(rows) - 1):
row = rows[i + 1]
target = row[0]
for j in range(i + 1):
value = row[j + 1]
if value != NO_INTERACTION_VALUE:
output.append(ids[j] + DELIMITER + target)
with open(result_name, "w") as result_file:
result_file.write("idA,idB\n")
result_file.write("\n".join(output))
Приложение aMatReader может выполнять такой импорт, просто установите его и перейдите в Apps > aMatReader > Import Matrix Files