-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgene_interaction_PPI.py
34 lines (32 loc) · 995 Bytes
/
gene_interaction_PPI.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# PPI interaction
import pandas as pd
import numpy as np
df = pd.read_csv('GSE18123GPL570.csv')
feats = list(df.columns)
feats.remove('condition')
df = pd.read_csv('mapping/hippie_current.txt', header=None, sep='\t')
df.columns = ['p1','v1','p2','v2','score','desc']
df['p1'] = df['p1'].apply(lambda x: str(x).replace('_HUMAN',''))
df['p2'] = df['p2'].apply(lambda x: str(x).replace('_HUMAN',''))
df = df[ ['p1','p2','score'] ]
connectivity = np.zeros((len(feats),len(feats)))
for i in range(len(feats)):
connectivity[i][i] = 1
for index, row in df.iterrows():
print , row["p2"]
i_idx = -1
try:
i_idx = feat_idx[row["p1"]]
except:
pass
if i_idx>=0:
j_idx = -1
try:
j_idx = feat_idx[row["p2"]]
except:
pass
if j_idx>=0:
connectivity[i_idx][j_idx] = 1
connectivity[j_idx][i_idx] = 1
bf = pd.DataFrame(connectivity)
bf.to_csv('gene_interaction/PPI.csv',index=None,header=None)