def processGeneCalls(first_file, second_file, input_directory, output_file, output_directory, lines_skip): from xlsxwriter.workbook import Workbook import methodslist as ml import os # Set directory old_dir = os.getcwd() os.chdir(output_directory) print('\nStarting at %r' % input_directory) # Import text to tables table1 = ml.importTable(first_file, input_directory, lines_skip) table2 = ml.importTable(second_file, input_directory, lines_skip) # Find mutated rows with that are matched and unmatched total_comparison = ml.compareTables(table1, table2) matched1 = total_comparison[0] matched2 = total_comparison[1] unmatched1 = total_comparison[2] unmatched2 = total_comparison[3] ''' #Select only certain categories keeps1 = ml.saveByCategory(keeps1) keeps2 = ml.saveByCategory(keeps2) matched_reject2_unmatched1 = ml.saveByCategory(matched_reject2_unmatched1) matched_reject1_unmatched2 = ml.saveByCategory(matched_reject1_unmatched2) ''' # Calculate condordance condordance_table = ml.calcCondordance(unmatched1, unmatched2, matched1) # Write tables to text files book = Workbook(output_file) ml.outputTable(book, condordance_table, 'Concordance Summary', output_directory) ml.outputTable(book, table1, 'NC TC Input', output_directory) ml.outputTable(book, table2, 'NF TF Input', output_directory) ml.outputTable(book, matched1, 'NC TC Matches', output_directory) ml.outputTable(book, matched2, 'NF TF Matches', output_directory) book.close() os.chdir(old_dir) print('Finished')
def processMutations(first_file, second_file , input_directory, output_file, output_directory, lines_skip): from xlsxwriter.workbook import Workbook import methodslist as ml import os # Set directory old_dir = os.getcwd() os.chdir(output_directory) print('\nStarting at %r' % input_directory) # Import text to tables table1 = ml.importTable(first_file, input_directory, lines_skip) table2 = ml.importTable(second_file, input_directory, lines_skip) # Save rows with detected mutations keeps1 = ml.saveByValue(table1, 'judgement', 'KEEP') keeps2 = ml.saveByValue(table2, 'judgement', 'KEEP') # Find mutated rows with that are matched and unmatched total_comparison = ml.compareTables(keeps1, keeps2) ''' Comparision array: 0 is same_first_table 1 is same_second_table 2 is diff_first_table 3 is diff_second_table ''' matched_keeps1 = total_comparison[0] matched_keeps2 = total_comparison[1] unmatched_keeps1 = total_comparison[2] unmatched_keeps2 = total_comparison[3] # Save rows with no detected mutations rejects1 = ml.saveByValue(table1, 'judgement', 'REJECT') rejects2 = ml.saveByValue(table2, 'judgement', 'REJECT') # Compare unmatched KEEP rows of one table to REJECT rows of other table total_compare_reject2_unmatched1 = ml.compareTables(unmatched_keeps1, rejects2) matched_reject2_unmatched1 = total_compare_reject2_unmatched1[1] # 1 is the second column total_compare_reject1_unmatched2 = ml.compareTables(unmatched_keeps2, rejects1) matched_reject1_unmatched2 = total_compare_reject1_unmatched2[1] # Select only certain categories keeps1 = ml.saveByCategory(keeps1) keeps2 = ml.saveByCategory(keeps2) matched_reject2_unmatched1 = ml.saveByCategory(matched_reject2_unmatched1) matched_reject1_unmatched2 = ml.saveByCategory(matched_reject1_unmatched2) # Calculate concordance between NC TC and NF TF concordance_table = ml.calcCondordance(unmatched_keeps1, unmatched_keeps2, matched_keeps1) # Write tables to text files book = Workbook(output_file) ml.outputTable(book, concordance_table, 'Concordance Summary', output_directory) ml.outputTable(book, keeps1, 'NC TC KEEP', output_directory) ml.outputTable(book, keeps2, 'NF TF KEEP', output_directory) ml.outputTable(book, matched_reject2_unmatched1, 'NF TF Matched REJECTS', output_directory) ml.outputTable(book, matched_reject1_unmatched2, 'NC TC Matched REJECTS', output_directory) book.close() os.chdir(old_dir) print('Finished')