-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReadCountsSamples.py
77 lines (59 loc) · 1.93 KB
/
ReadCountsSamples.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
import os,re,glob,commands
class Sample(object):
"""A sample is an object containing all the read information of a sample"""
def __init__(self, name):
"""Create a new sample"""
self.name = name
def getName(self):
return self.name
def setRawReads(self, r):
self.rawReads = r
def getRawReads(self):
return self.rawReads
def setTrimmedReads(self, t):
self.trimmedReads = t
def getTrimmedReads(self):
return self.trimmedReads
def setMatchedReads(self, m):
self.matchedReads = m
def getMatchedReads(self):
return self.matchedReads
def setPairedAligned(self, p):
self.pairedAligned = p
def getPairedAligned(self):
return self.pairedAligned
def setSingleAligned(self, s):
self.singleAligned = s
def getSingleAligned(self):
return self.singleAligned
def __str__(self):
return self.name + ',' + str(self.rawReads) + ',' + str(self.trimmedReads) + ',' + str(self.matchedReads) + ',' + str(self.pairedAligned) + ',' + str(self.singleAligned)
sampleList=[]
listOfFiles = glob.glob('*.gz')
print listOfFiles
SampleID = list(listOfFiles)
i=0
for item in listOfFiles:
SampleID[i] = re.split('\.|_', str(item))[0]
i = i + 1
prefixSet=list(set(SampleID))
prefixSet.sort()
print prefixSet
x = 0
for prefix in prefixSet:
x = Sample(prefix)
sampleList.append(x)
result1 = commands.getoutput('zcat '+ prefix + '_1.fq.gz | wc -l')
numreads = result1
print result1
#result2 = commands.getoutput('zcat ' + prefix + '_2.fq.gz | wc -l')
#numreads = numreads + int(result2)/4.0
#x.setRawReads(numreads)
#x=x+1
sample1 = Sample('Gv10-H-06')
sample1.setRawReads(1000)
sample1.setTrimmedReads(2000)
sample1.setMatchedReads(52412)
sample1.setPairedAligned(428236)
sample1.setSingleAligned(74293)
print sample1