Mercurial > repos > bimib > cobraxy
comparison COBRAxy/ras_to_bounds.py @ 130:03bbbd9af67d draft
Uploaded
| author | luca_milaz | 
|---|---|
| date | Tue, 15 Oct 2024 18:31:34 +0000 | 
| parents | dfb6a1dc6dbc | 
| children | 63cb32c3d8b1 | 
   comparison
  equal
  deleted
  inserted
  replaced
| 129:dfb6a1dc6dbc | 130:03bbbd9af67d | 
|---|---|
| 178 # Set medium conditions | 178 # Set medium conditions | 
| 179 for reaction, value in medium.items(): | 179 for reaction, value in medium.items(): | 
| 180 if value is not None: | 180 if value is not None: | 
| 181 model.reactions.get_by_id(reaction).lower_bound = -float(value) | 181 model.reactions.get_by_id(reaction).lower_bound = -float(value) | 
| 182 | 182 | 
| 183 | |
| 184 mediumRxns_ids = medium.keys() | |
| 185 | 183 | 
| 186 # Perform Flux Variability Analysis (FVA) on this medium | 184 # Perform Flux Variability Analysis (FVA) on this medium | 
| 187 df_FVA = cobra.flux_analysis.flux_variability_analysis(model, fraction_of_optimum=0, processes=1).round(8) | 185 df_FVA = cobra.flux_analysis.flux_variability_analysis(model, fraction_of_optimum=0, processes=1).round(8) | 
| 188 | 186 | 
| 189 # Set FVA bounds | 187 # Set FVA bounds | 
| 220 ARGS.output_folder = 'ras_to_bounds/' | 218 ARGS.output_folder = 'ras_to_bounds/' | 
| 221 | 219 | 
| 222 if(ARGS.ras_selector == True): | 220 if(ARGS.ras_selector == True): | 
| 223 ras_file_list = ARGS.input_ras.split(",") | 221 ras_file_list = ARGS.input_ras.split(",") | 
| 224 ras_file_names = ARGS.name.split(",") | 222 ras_file_names = ARGS.name.split(",") | 
| 223 if len(ras_file_names) != len(set(ras_file_names)): | |
| 224 error_message = "Duplicated file names in the uploaded RAS matrices." | |
| 225 warning(error_message) | |
| 226 raise ValueError(error_message) | |
| 227 pass | |
| 225 ras_class_names = [] | 228 ras_class_names = [] | 
| 226 for file in ras_file_names: | 229 for file in ras_file_names: | 
| 227 ras_class_names.append(file.split(".")[0]) | 230 ras_class_names.append(file.split(".")[0]) | 
| 228 ras_list = [] | 231 ras_list = [] | 
| 229 class_assignments = pd.DataFrame(columns=["Patient_ID", "Class"]) | 232 class_assignments = pd.DataFrame(columns=["Patient_ID", "Class"]) | 
| 231 ras = read_dataset(ras_matrix, "ras dataset") | 234 ras = read_dataset(ras_matrix, "ras dataset") | 
| 232 ras.replace("None", None, inplace=True) | 235 ras.replace("None", None, inplace=True) | 
| 233 ras.set_index("Reactions", drop=True, inplace=True) | 236 ras.set_index("Reactions", drop=True, inplace=True) | 
| 234 ras = ras.T | 237 ras = ras.T | 
| 235 ras = ras.astype(float) | 238 ras = ras.astype(float) | 
| 239 #append class name to patient id (dataframe index) | |
| 240 ras.index = [f"{idx}_{ras_class_name}" for idx in ras.index] | |
| 236 ras_list.append(ras) | 241 ras_list.append(ras) | 
| 237 for patient_id in ras.index: | 242 for patient_id in ras.index: | 
| 238 class_assignments.loc[class_assignments.shape[0]] = [patient_id, ras_class_name] | 243 class_assignments.loc[class_assignments.shape[0]] = [patient_id, ras_class_name] | 
| 239 | 244 | 
| 240 | 245 | 
