-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtest_eqtls.py
executable file
·58 lines (50 loc) · 1.79 KB
/
test_eqtls.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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
#!usr/bin/python
import csv
import os
def get_genes(genes_file):
genes = []
with open(genes_file) as gfile:
reader = csv.reader(gfile, delimiter = '\t')
for line in reader:
genes.append(line[0])
gfile.close()
return genes
def get_eqtls(genes, obesity_eqtls, diabetes_eqtls):
to_gtex_obesity = []
to_gtex_diabetes = []
with open(obesity_eqtls) as ofile:
reader = csv.reader(ofile, delimiter = '\t')
next(reader, None)
for line in reader:
snp = line[0]
e_gene = line[3]
tissue = line[7]
for gene in genes:
if e_gene == gene:
to_gtex_obesity.append([snp,gene,tissue])
ofile.close()
with open(diabetes_eqtls) as dfile:
reader = csv.reader(dfile, delimiter = '\t')
next(reader, None)
for line in reader:
snp = line[0]
e_gene = line[3]
tissue = line[7]
for gene in genes:
if e_gene == gene:
to_gtex_diabetes.append([snp,gene,tissue])
dfile.close()
gtex_ofile = open('../analysis/insulin_eqtls_obesity.txt', 'wb')
writer = csv.writer(gtex_ofile, delimiter = ',')
writer.writerows(to_gtex_obesity)
gtex_ofile.close()
gtex_dfile = open('../analysis/insulin_eqtls_diabetes.txt', 'wb')
writer = csv.writer(gtex_dfile, delimiter = ',')
writer.writerows(to_gtex_diabetes)
gtex_dfile.close()
if __name__== '__main__':
obesity_eqtls = '../obesity/results/codes3d_results/dhs_results/sig_SNP-gene_eqtls.txt'
diabetes_eqtls = '../diabetes/results/dhs_results/sig_SNP-gene_eqtls.txt'
genes_file = '../analysis/leptin_genes.txt'
genes = get_genes(genes_file)
get_eqtls(genes, obesity_eqtls, diabetes_eqtls)