-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathHackathod_Siyi.py
128 lines (109 loc) · 3.46 KB
/
Hackathod_Siyi.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
import sqlite3
# create a connection to our SQlite database
DatabaseName = './Team2_Siyi.db'
connection = sqlite3.connect(DatabaseName)
cur = connection.cursor()
# CREATE TABLE of pheno in database
cur.executescript("""
CREATE TABLE PHENO (
SampleKey INT UNIQUE,
Age INT,
Sex char(2) NOT NULL,
PRIMARY KEY (SampleKey)
);
""")
cur.executescript("""
CREATE TABLE EPIC (
ProbeName varchar(255) NOT NULL,
ProbeKey INT UNIQUE,
Chr INT,
GeneName varchar(255),
RefGeneGroup varchar(255),
CpGIsland varchar(255),
PRIMARY KEY (ProbeKey)
);
""")
cur.executescript("""
CREATE TABLE PROBEINFO (
ProbeName varchar(255) NOT NULL,
ProbeKey INT UNIQUE
);
""")
cur.executescript("""
CREATE TABLE AAAVALUE (
ProbeKey INT,
SampleKey INT,
Value decimal(10, 10),
FOREIGN KEY (ProbeKey) REFERENCES RPOBEINFO(ProbeKey)
);
""")
cur.executescript("""
CREATE TABLE BBBVALUE (
ProbeKey INT,
SampleKey INT,
Value decimal(10, 10),
FOREIGN KEY (ProbeKey) REFERENCES RPOBEINFO(ProbeKey)
);
""")
cur.executescript("""
CREATE TABLE CCCVALUE (
ProbeKey INT,
SampleKey INT,
Value decimal(10, 10),
FOREIGN KEY (ProbeKey) REFERENCES RPOBEINFO(ProbeKey)
);
""")
cur.executescript("""
CREATE TABLE DDDVALUE (
ProbeKey INT,
SampleKey INT,
Value decimal(10, 10),
FOREIGN KEY (ProbeKey) REFERENCES RPOBEINFO(ProbeKey)
);
""")
# INSERT the data
import csv
with open('Siyi_Phen.csv', 'r') as phe:
reader = csv.reader(phe)
next(reader)
for line in reader:
connection.execute("INSERT INTO PHENO VALUES (?,?,?);", tuple(line))
print("PHENO table is finished!!!!!")
with open('Siyi_epic.csv', 'r') as epi:
reader = csv.reader(epi)
next(reader)
for line in reader:
connection.execute("INSERT INTO EPIC VALUES (?,?,?,?,?,?);", tuple(line))
print("EPIC table is finished!!!!!")
with open('Siyi_CpG_info_more.csv', 'r') as cpg:
reader = csv.reader(cpg)
next(reader)
for line in reader:
connection.execute("INSERT INTO PROBEINFO VALUES (?,?);", tuple(line))
print("PROBEINFO table is finished!!!!!")
with open('Siyi_A_betas.csv', 'r') as aaa:
reader = csv.reader(aaa)
next(reader)
for line in reader:
connection.execute("INSERT INTO AAAVALUE VALUES (?,?,?);", tuple(line))
print("AAAVALUE table is finished!!!!!")
with open('Siyi_B_betas.csv', 'r') as bbb:
reader = csv.reader(bbb)
next(reader)
for line in reader:
connection.execute("INSERT INTO BBBVALUE VALUES (?,?,?);", tuple(line))
print("BBBVALUE table is finished!!!!!")
with open('Siyi_C_betas.csv', 'r') as ccc:
reader = csv.reader(ccc)
next(reader)
for line in reader:
connection.execute("INSERT INTO CCCVALUE VALUES (?,?,?);", tuple(line))
print("CCCVALUE table is finished!!!!!")
with open('Siyi_D_betas.csv', 'r') as ddd:
reader = csv.reader(ddd)
next(reader)
for line in reader:
connection.execute("INSERT INTO DDDVALUE VALUES (?,?,?);", tuple(line))
print("DDDVALUE table is finished!!!!!")
connection.commit()
connection.close()