@@ -33,7 +33,7 @@ def parse_args():
33
33
parser .add_argument ("--tmpdir" , required = False , default = '_TMP' , type = str , help = "Temporary directory in running directory (default: _TMP)" )
34
34
parser .add_argument ("-n" ,"--normal" , required = False , type = str , default = "pseudonormal.bam" , help = "Name of the generated pseudo matched-normal BAM file (default: pseudonormal.bam)" )
35
35
parser .add_argument ("--cellprefix" , type = str , required = False , default = 'CB:Z:' , help = "Prefix of cell barcode field in SAM format (default: CB:Z:)" )
36
- parser .add_argument ("--cellsuffix" , type = str , required = False , default = None , help = "Suffix of cell barcode field in SAM format (default: none)" )
36
+ parser .add_argument ("--cellsuffix" , type = str , required = False , default = '' , help = "Suffix of cell barcode field in SAM format (default: none)" )
37
37
args = parser .parse_args ()
38
38
39
39
if not os .path .isdir (args .rundir ):
@@ -106,6 +106,7 @@ def main():
106
106
log ('Counting reads on barcoded cells' )
107
107
counts = counting_cells (counts , args ['tumor' ], bins , args ['samtools' ], args ['jobs' ], args ['cellprefix' ], args ['cellsuffix' ])
108
108
cells = set (e for c in counts for b in counts [c ] for e in counts [c ][b ])
109
+ log ('Number of identified cells: {}' .format (len (cells )), level = 'INFO' )
109
110
110
111
log ('Computing total numbers of sequenced reads' )
111
112
total = reduce (inupdate , (Counter (counts [c ][b ]) for c in counts for b in counts [c ]))
@@ -121,17 +122,19 @@ def main():
121
122
with open (dlist , 'w' ) as o :
122
123
o .write ('\n ' .join (diploid ) + '\n ' )
123
124
log ('Number of identified diploid cells: {}' .format (len (diploid )), level = 'INFO' )
124
- cov = (float (sum (total [e ] for e in diploid )) * 100.0 ) / float (sum (b [1 ] - b [0 ] for c in counts for b in counts [c ]))
125
- log ('Approximate sequencing coverage of pseudo matched-normal sample: {}' .format (cov ), level = 'INFO' )
126
125
127
- log ('Extracting sequencing reads from selected diploid cells' )
128
- extracting_diploid (args ['tumor' ], args ['samtools' ], chrs , args ['tmpdir' ], dlist , args ['jobs' ])
126
+ if len (diploid ) > 0 :
127
+ cov = (float (sum (total [e ] for e in diploid )) * 100.0 ) / float (sum (b [1 ] - b [0 ] for c in counts for b in counts [c ]))
128
+ log ('Approximate sequencing coverage of pseudo matched-normal sample: {}' .format (cov ), level = 'INFO' )
129
129
130
- log ('Merging and extracted sequencing reads and indexing the output pseduo matched-normal sample ' )
131
- merging_diploid ( chrs , args ['tmpdir ' ], args ['samtools' ], os . path . join ( args ['rundir ' ], args ['normal' ]) )
130
+ log ('Extracting sequencing reads from selected diploid cells ' )
131
+ extracting_diploid ( args ['tumor ' ], args ['samtools' ], chrs , args ['tmpdir ' ], dlist , args ['jobs' ] )
132
132
133
- log ('Removing temporary files' )
134
- shutil .rmtree (args ['tmpdir' ])
133
+ log ('Merging and extracted sequencing reads and indexing the output pseduo matched-normal sample' )
134
+ merging_diploid (chrs , args ['tmpdir' ], args ['samtools' ], os .path .join (args ['rundir' ], args ['normal' ]))
135
+
136
+ log ('Removing temporary files' )
137
+ shutil .rmtree (args ['tmpdir' ])
135
138
136
139
log ('KTHXBYE' )
137
140
0 commit comments