示例#1
0
def main(argv=None):
    """script main.

    parses command line options in sys.argv, unless *argv* is given.
    """

    if argv is None:
        argv = sys.argv

    # setup command line parser
    parser = E.OptionParser(version="%prog version: $Id$",
                            usage=globals()["__doc__"])

    parser.add_option("-t", "--test", dest="test", type="string",
                      help="supply help")

    parser.add_option("--time", dest="timepoints", type="string",
                      help="a comma-separated list of time points measured")

    parser.add_option("--replicates", dest="reps", type="string",
                      help="a comma-separated list of replicate IDs")

    parser.add_option("--conditions", dest="conditions", type="string",
                      help="a comma-separated list of experimental conditions")

    parser.add_option("--orders", dest="orders", type="int",
                      help="order of polynomial terms to include in"
                      "maSigPro linear model")

    parser.add_option("--fdr", dest="fdr", type="string",
                      help="FDR for calling DEGs")

    parser.add_option("--padjust", dest="padjust", type="string",
                      help="multiple testing correction to apply to"
                      "control FDR")

    parser.add_option("--stepwise", dest="stepwise", type="string",
                      help="stepwise regression to use")

    parser.add_option("--pinclude", dest="pinclude", type="string",
                      help="p-value for inclusion in stepwise regression")

    parser.add_option("--rsquared", dest="rsquared", type="string",
                      help="rsquared cut-off for DEG reporting")

    parser.add_option("--var-group", dest="vargroup", type="string",
                      help="variable group reporting. each, all or"
                      "group")

    parser.add_option("--task", dest="task", type="string",
                      help="analysis task to be executed")

    parser.add_option("--infile", dest="infile", type="string",
                      help="input file path")

    parser.add_option("--quantile", dest="quantile", type="int",
                      help="see pipeline.ini for explanation")

# add common options (-h/--help, ...) and parse command line

    (options, args) = E.Start(parser, argv=argv)

    infile = argv[-1]

    parser.set_defaults(cutHeight=0,
                        conditions=None,
                        split=False,
                        cluster_size=30)

    if options.task == "deseq":
        timepoints = [int(x) for x in options.timepoints.split(",")]
        timepoints.sort()
        reps = [x for x in options.reps.split(",")]
        if not options.conditions:
            conditions = None
        else:
            conditions = [x for x in options.conditions.split(",")]

        data_frame = TS.deseqNormalize(infile=infile,
                                       time_points=timepoints,
                                       reps=reps,
                                       conditions=conditions)

    elif options.task == "masigpro":
        data_frame = TS.maSigPro(infile=infile,
                                 order_terms=int(options.orders),
                                 fdr=float(options.fdr),
                                 adjust=options.padjust,
                                 stepwise=options.stepwise,
                                 include_p=float(options.pinclude),
                                 rsq=float(options.rsquared),
                                 var_group=options.vargroup)

    elif options.task == "sumcovar":
        timepoints = [int(x) for x in options.timepoints.split(",")]
        reps = [x for x in options.reps.split(",")]
        data_frame = TS.covarFilter(infile=infile,
                                    time_points=timepoints,
                                    replicates=reps,
                                    quantile=int(options.quantile))

    elif options.task == "average_expression":
        data_frame = TS.avTimeExpression(infile)

    else:
        pass

    data_frame.to_csv(options.stdout,
                      sep="\t",
                      header=True,
                      index_label="gene_id")

    # Write footer and output benchmark information.
    E.Stop()
示例#2
0
def main(argv=None):
    """script main.

    parses command line options in sys.argv, unless *argv* is given.
    """

    if argv is None:
        argv = sys.argv

    # setup command line parser
    parser = E.OptionParser(version="%prog version: $Id$",
                            usage=globals()["__doc__"])

    parser.add_option("-t",
                      "--test",
                      dest="test",
                      type="string",
                      help="supply help")

    parser.add_option("--time",
                      dest="timepoints",
                      type="string",
                      help="a comma-separated list of time points measured")

    parser.add_option("--replicates",
                      dest="reps",
                      type="string",
                      help="a comma-separated list of replicate IDs")

    parser.add_option("--conditions",
                      dest="conditions",
                      type="string",
                      help="a comma-separated list of experimental conditions")

    parser.add_option("--orders",
                      dest="orders",
                      type="int",
                      help="order of polynomial terms to include in"
                      "maSigPro linear model")

    parser.add_option("--fdr",
                      dest="fdr",
                      type="string",
                      help="FDR for calling DEGs")

    parser.add_option("--padjust",
                      dest="padjust",
                      type="string",
                      help="multiple testing correction to apply to"
                      "control FDR")

    parser.add_option("--stepwise",
                      dest="stepwise",
                      type="string",
                      help="stepwise regression to use")

    parser.add_option("--pinclude",
                      dest="pinclude",
                      type="string",
                      help="p-value for inclusion in stepwise regression")

    parser.add_option("--rsquared",
                      dest="rsquared",
                      type="string",
                      help="rsquared cut-off for DEG reporting")

    parser.add_option("--var-group",
                      dest="vargroup",
                      type="string",
                      help="variable group reporting. each, all or"
                      "group")

    parser.add_option("--task",
                      dest="task",
                      type="string",
                      help="analysis task to be executed")

    parser.add_option("--infile",
                      dest="infile",
                      type="string",
                      help="input file path")

    parser.add_option("--quantile",
                      dest="quantile",
                      type="int",
                      help="see pipeline.ini for explanation")

    (options, args) = E.Start(parser, argv=argv)

    infile = argv[-1]

    parser.set_defaults(cutHeight=0,
                        conditions=None,
                        split=False,
                        cluster_size=30)

    if options.task == "deseq":
        timepoints = [int(x) for x in options.timepoints.split(",")]
        timepoints.sort()
        reps = [x for x in options.reps.split(",")]
        if not options.conditions:
            conditions = None
        else:
            conditions = [x for x in options.conditions.split(",")]

        data_frame = TS.deseqNormalize(infile=infile,
                                       time_points=timepoints,
                                       reps=reps,
                                       conditions=conditions)

    elif options.task == "masigpro":
        data_frame = TS.maSigPro(infile=infile,
                                 order_terms=int(options.orders),
                                 fdr=float(options.fdr),
                                 adjust=options.padjust,
                                 stepwise=options.stepwise,
                                 include_p=float(options.pinclude),
                                 rsq=float(options.rsquared),
                                 var_group=options.vargroup)

    elif options.task == "sumcovar":
        timepoints = [int(x) for x in options.timepoints.split(",")]
        reps = [x for x in options.reps.split(",")]
        data_frame = TS.covarFilter(infile=infile,
                                    time_points=timepoints,
                                    replicates=reps,
                                    quantile=int(options.quantile))

    elif options.task == "average_expression":
        data_frame = TS.avTimeExpression(infile)

    else:
        pass

    data_frame.to_csv(options.stdout,
                      sep="\t",
                      header=True,
                      index_label="gene_id")

    # Write footer and output benchmark information.
    E.Stop()