def build_cnv_gainloss_2_gene_training_data(self, data_dir, outcome_file, cnv_2_gene_file): ''' Function: 針對gene symbol增加gain/loss為feature. Input: cnv_2_gene_file: 整理好的array_id對應到gene_symbol. ''' excel_obj = ExcelReader() data_reader_obj = DataReader() outcome_dict = excel_obj.get_cyto_cnv_result(outcome_file) cnv_df = data_reader_obj.cnv_data_reader_pipeline(data_dir) #### probe mapping to gene (array_2_gene, gene_2_array ) = data_reader_obj.get_cnv_gainloss_to_gene_table(cnv_2_gene_file) # print(array_2_gene) gene_cnv = data_reader_obj.build_array_to_gene(cnv_df, array_2_gene, gene_2_array) ## gene cnv data_df = data_reader_obj.combine_outcome_data(gene_cnv, outcome_dict) return data_df