인접 행렬을 csv 파일 로 변환에 게시 된 것과 유사한 질문이 있습니다.
ARACNE의 인접 행렬 출력을 python (또는 가능하면 R)을 사용하여 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로 변환하려면 어떻게해야합니까? 머리를 긁었지만 해결책을 찾을 수 없습니다. 파이썬이 어떻게 마술을 할 수 있는지보고 싶습니다!
대답 해줘서 고마워. -샤오 용
다음을 사용하여 수행 할 수 있습니다. 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] 삭제
몇 마디 만하겠습니다