annotate deseq/differential_expression_analysis_pipeline_for_rnaseq_data-a03838a6eb54/DiffExpAnal/loadMultiFastqFiles.py @ 10:6e573fd3c41b draft

Uploaded
author yufei-luo
date Mon, 13 May 2013 10:06:30 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
1 #!/usr/bin/env python
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
2
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
3 """
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
4 Yufei LUO
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
5 """
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
6
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
7
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
8
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
9 import optparse, sys
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
10
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
11
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
12 def __main__():
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
13 #Parse Command Line
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
14 parser = optparse.OptionParser()
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
15 parser.add_option('-i', '--inputs', dest='inputFiles', default=None, help='several input files. (seperated by @ or @@' )
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
16 parser.add_option( '-o', '--output', dest='outputSingleFile', default=None, help='The output list of fastq files on txt format.' )
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
17 parser.add_option( '', '--pairedEnd', dest='outputPaireFile', default=None, help='paired end option help to upload the corresponding paired end complementary fastq files' )
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
18 ( options, args ) = parser.parse_args()
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
19
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
20
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
21
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
22 if options.outputSingleFile == None:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
23 raise Exception, 'OutSingleFile txt file name is not defined!'
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
24 else:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
25 outSingle = open(options.outputSingleFile, 'w')
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
26
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
27 if options.inputFiles == None:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
28 raise Exception, 'input file name is not defined!'
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
29
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
30 groupCount = 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
31 fileCount = 0
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
32
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
33 if options.outputPaireFile == None:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
34 inputFiles = sys.argv[4:]
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
35 i = 0
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
36 while i < (len(inputFiles)-1):
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
37 if inputFiles[i] == "@":
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
38 i += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
39 fileCount = 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
40 groupCount += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
41 outSingle.write("Group%s_%s\t%s\n" % (groupCount, fileCount, inputFiles[i]))
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
42
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
43 else:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
44 fileCount += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
45 outSingle.write("Group%s_%s\t%s\n" % (groupCount, fileCount, inputFiles[i]))
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
46
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
47 i += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
48 else:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
49 inputFiles = sys.argv[6:]
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
50 print '\n\nthe length of inputfiles is : %s \n' % len(inputFiles)
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
51 outPaire = open(options.outputPaireFile, 'w')
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
52 i = 0
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
53 while i < (len(inputFiles)-1):
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
54 if inputFiles[i] == "@@":
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
55 i += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
56 outPaire.write("Group%s_%s\t%s\n" % (groupCount, fileCount, inputFiles[i]))
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
57 elif inputFiles[i] == "@":
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
58 i += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
59 fileCount = 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
60 groupCount += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
61 outSingle.write("Group%s_%s\t%s\n" % (groupCount, fileCount, inputFiles[i]))
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
62 else:
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
63 fileCount += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
64 outSingle.write("Group%s_%s\t%s\n" % (groupCount, fileCount, inputFiles[i]))
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
65
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
66 i += 1
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
67
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
68
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
69
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
70 outPaire.close()
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
71
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
72 outSingle.close()
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
73
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
74
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
75
6e573fd3c41b Uploaded
yufei-luo
parents:
diff changeset
76 if __name__=="__main__": __main__()