def anova_pipeline(args=None): """This function is used by the standalone application called **gdsctools_anova** Type:: gdsctools_anova --help to get some help. """ msg = "Welcome to GDSCTools standalone" print_color(msg, purple, underline=True) # Keep the argument args as None by default to # allow testing e.g., in nosetests if args is None: args = sys.argv[:] elif len(args) == 1: args += ['--help'] user_options = ANOVAOptions(prog="gdsctools_anova") try: options = user_options.parse_args(args[1:]) except SystemExit: return # ----------------------------------------------------------------- # ---------------------------------------- options without analysis # ----------------------------------------------------------------- if options.version is True: print("This is version %s of gdsctools_anova" % gdsctools.version) return if options.testing is True: print('Testing mode:') from gdsctools import ANOVA, ic50_test an = ANOVA(ic50_test) df = an.anova_one_drug_one_feature('Drug_1047_IC50', 'TP53_mut') assert df.loc[1,'N_FEATURE_pos'] == 554, \ "N_feature_pos must be equal to 554" print(df.T) print(darkgreen("\nGDSCTools seems to be installed properly")) return if options.save_settings: from gdsctools import ANOVA, ic50_test an = ANOVA(ic50_test) an.settings.to_json(options.save_settings) print('Save a default parameter set in %s' % options.save_settings) return if options.license is True: print(gdsctools.license) return if options.summary is True: from gdsctools import anova an = anova.ANOVA(options.input_ic50, options.input_features) print(an) return if options.print_tissues is True: from gdsctools import anova an = anova.ANOVA(options.input_ic50, options.input_features) tissues = an.tissue_factor try: tissues = tissues.sort_values('Tissue Factor').unique() except: tissues = tissues.sort(inplace=False).unique() for name in tissues: print(name) return if options.print_drugs is True: from gdsctools import anova gdsc = anova.ANOVA(options.input_ic50, options.input_features) import textwrap print("\n".join(textwrap.wrap(" , ".join(gdsc.drugIds)))) return if options.print_features is True: from gdsctools import anova gdsc = anova.ANOVA(options.input_ic50, options.input_features) import textwrap print("\n".join(textwrap.wrap(" , ".join(gdsc.feature_names)))) return # ----------------------------------------------------------------- # --------------------------------------------------- real analysis # ----------------------------------------------------------------- # dispatcher to the functions according to the user parameters from gdsctools import ANOVA, ANOVAReport anova = ANOVA(options.input_ic50, options.input_features, options.input_drug, low_memory=not options.fast) anova = _set_settings(anova, options) if options.drug and options.drug not in anova.ic50.df.columns: print(red("Invalid Drug. Try --print-drug-names")) sys.exit(1) if options.drug is not None and options.feature is not None: print_color("ODOF mode", purple) anova_one_drug_one_feature(anova, options) elif options.drug is not None: print_color("ODAF mode", purple) anova_one_drug(anova, options) else: # analyse everything if options.feature is None: print_color("ADAF mode", purple) else: print_color("ADOF mode", purple) anova_all(anova, options) if options.onweb is False and options.no_html is False: msg = "\nNote that a directory {} was created and files saved into it" print(purple(msg.format(options.directory))) return
def anova_pipeline(args=None): """This function is used by the standalone application called **gdsctools_anova** Type:: gdsctools_anova --help to get some help. """ msg = "Welcome to GDSCTools standalone" print_color(msg, purple, underline=True) # Keep the argument args as None by default to # allow testing e.g., in nosetests if args is None: args = sys.argv[:] elif len(args) == 1: args += ['--help'] user_options = ANOVAOptions(prog="gdsctools_anova") try: options = user_options.parse_args(args[1:]) except SystemExit: return # ----------------------------------------------------------------- # ---------------------------------------- options without analysis # ----------------------------------------------------------------- if options.version is True: print("This is version %s of gdsctools_anova" % gdsctools.version) return if options.testing is True: print('Testing mode:') from gdsctools import ANOVA, ic50_test an = ANOVA(ic50_test) df = an.anova_one_drug_one_feature('Drug_1047_IC50', 'TP53_mut') assert df.loc[1,'N_FEATURE_pos'] == 554, \ "N_feature_pos must be equal to 554" print(df.T) print(darkgreen("\nGDSCTools seems to be installed properly")) return if options.save_settings: from gdsctools import ANOVA, ic50_test an = ANOVA(ic50_test) an.settings.to_json(options.save_settings) print('Save a default parameter set in %s' % options.save_settings) return if options.license is True: print(gdsctools.license) return if options.summary is True: from gdsctools import anova an = anova.ANOVA(options.input_ic50, options.input_features) print(an) return if options.print_tissues is True: from gdsctools import anova an = anova.ANOVA(options.input_ic50, options.input_features) tissues = an.tissue_factor try: tissues = tissues.sort_values('Tissue Factor').unique() except: tissues = tissues.sort(inplace=False).unique() for name in tissues: print(name) return if options.print_drugs is True: from gdsctools import anova gdsc = anova.ANOVA(options.input_ic50, options.input_features) import textwrap print("\n".join(textwrap.wrap(" , ".join(gdsc.drugIds)))) return if options.print_features is True: from gdsctools import anova gdsc = anova.ANOVA(options.input_ic50, options.input_features) import textwrap print("\n".join(textwrap.wrap(" , ".join(gdsc.feature_names)))) return # ----------------------------------------------------------------- # --------------------------------------------------- real analysis # ----------------------------------------------------------------- # dispatcher to the functions according to the user parameters from gdsctools import ANOVA, ANOVAReport anova = ANOVA(options.input_ic50, options.input_features, options.input_drug, low_memory=not options.fast) anova = _set_settings(anova, options) if options.drug and options.drug not in anova.ic50.df.columns: print(red("Invalid Drug. Try --print-drug-names")) sys.exit(1) if options.drug is not None and options.feature is not None: print_color("ODOF mode", purple) anova_one_drug_one_feature(anova, options) elif options.drug is not None: print_color("ODAF mode", purple) anova_one_drug(anova, options) else: # analyse everything if options.feature is None: print_color("ADAF mode", purple) else: print_color("ADOF mode", purple) anova_all(anova, options) if options.onweb is False and options.no_html is False: msg = "\nNote that a directory {} was created and files saved into it" print(purple(msg.format(options.directory))) return
""" Association between a Drug and a Feature ========================================= Boxplot association """ ##################################################### # from gdsctools import ANOVA, ic50_test gdsc = ANOVA(ic50_test) gdsc.set_cancer_type('breast') df = gdsc.anova_one_drug_one_feature(1047, 'TP53_mut', show=True)
""" Association between a Drug and a Feature ========================================= Boxplot association """ ##################################################### # from gdsctools import ANOVA, ic50_test gdsc = ANOVA(ic50_test) gdsc.set_cancer_type('breast') df = gdsc.anova_one_drug_one_feature(1047, 'TP53_mut', show=True)