Esempio n. 1
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        expdata = args[1].split(",")
        annotationPath = args[2]
        output_path = args[3]
        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        adaptive = kwargs.get("a", False)
        doHistogram = kwargs.get("h", False)
        replicates = kwargs.get("r", "Sum")
        includeZeros = kwargs.get("iz", False)
        pseudocount = float(kwargs.get("pc", 0.00))

        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))

        return self(ctrldata, expdata, annotationPath, output_file,
                    normalization, samples, adaptive, doHistogram,
                    includeZeros, pseudocount, replicates, LOESS, ignoreCodon,
                    NTerminus, CTerminus)
Esempio n. 2
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        expdata = args[1].split(",")
        annotationPath = args[2]
        output_path = args[3]
        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        includeZeros = kwargs.get("iz", False)
        replicates = None


        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))

        return self(ctrldata,
                expdata,
                annotationPath,
                output_file,
                normalization,
                includeZeros,
                replicates,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 3
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)
        resamplingFile = args[0]
        associations = args[1]
        pathways = args[2]
        output = args[3]
        method = kwargs.get("M", "FISHER")
        N = int(kwargs.get("N", "10000"))  # for GSEA?
        p = int(kwargs.get("p", "1"))  # for GSEA?
        PC = int(kwargs.get("PC", "2"))

        if method not in "FISHER GSEA ONT".split():
            print("error: method %s not recognized" % method)
            print(self.usage_string())
            sys.exit(0)
        if method == "ONT":
            print("error: Ontologizer is not implemented yet")
            sys.exit(0)

        return self(resamplingFile,
                    associations,
                    pathways,
                    output,
                    method,
                    PC=PC,
                    N=N,
                    p=p)
Esempio n. 4
0
    def fromargs(self,rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")
    
        samples = int(kwargs.get("s", 10000))
        burnin = int(kwargs.get("b", 500))
        trim = int(kwargs.get("t", 1))
        minread = int(kwargs.get("m", 1))
        replicates = kwargs.get("r", "Sum")
        normalization = None
        LOESS = False
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.0))
        CTerminus = float(kwargs.get("iC", 0.0))

        return self(ctrldata,
                annotationPath,
                output_file,
                samples,
                burnin,
                trim,
                minread,
                replicates,
                normalization,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 5
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        # ctrl-vs-exp = condition 1-vs-2
        # originally, MAD defined order of CL args this way: strA/cond1, strB/cond1, strA/cond2, strB/cond
        #ctrldataA = args[0].split(",")
        #ctrldataB = args[1].split(",")
        #expdataA = args[2].split(",")
        #expdataB = args[3].split(",")

        # TRI changed order of args this way: strA/cond1, strA/cond2, strB/cond1, strB/cond
        ctrldataA = args[0].split(",")
        expdataA = args[1].split(",")
        ctrldataB = args[2].split(",")
        expdataB = args[3].split(",")

        annotationPath = args[4]
        output_path = args[5]
        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        rope = float(kwargs.get("-rope", 0.5))  # fixed! changed int to float
        replicates = kwargs.get("r", "Sum")
        includeZeros = kwargs.get("iz", False)

        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))

        return self(ctrldataA, ctrldataB, expdataA, expdataB, annotationPath,
                    output_file, normalization, samples, rope, includeZeros,
                    replicates, LOESS, ignoreCodon, NTerminus, CTerminus)
Esempio n. 6
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldataA = args[0].split(",")
        ctrldataB = args[1].split(",")
        expdataA = args[2].split(",")
        expdataB = args[3].split(",")
        annotationPath = args[4]
        output_path = args[5]
        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        rope = int(kwargs.get("-rope", 0.5))
        replicates = kwargs.get("r", "Sum")
        includeZeros = kwargs.get("iz", False)

        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))

        return self(ctrldataA, ctrldataB, expdataA, expdataB, annotationPath,
                    output_file, normalization, samples, rope, includeZeros,
                    replicates, LOESS, ignoreCodon, NTerminus, CTerminus)
Esempio n. 7
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (len(args) != 3): # wigs prot_table output
            print("Error: Incorrect number of args. See usage")
            print(self.usage_string())
            sys.exit(0)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        normalization = kwargs.get("n", "TTR")
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata,
                annotationPath,
                output_file,
                normalization,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 8
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)
        resamplingFile = args[0]
        associations = args[1]
        pathways = args[2]
        output = args[3]
        method = kwargs.get("M", "FET")
        PC = int(kwargs.get("PC", "2"))  # for FET
        Nperm = int(kwargs.get("Nperm", "10000"))  # for GSEA
        p = float(kwargs.get("p", "0"))  # for GSEA
        ranking = kwargs.get("ranking", "SLPV")  # for GSEA

        if method not in "FET GSEA ONT".split():
            print("error: method %s not recognized" % method)
            print(self.usage_string())
            sys.exit(0)

        return self(resamplingFile,
                    associations,
                    pathways,
                    output,
                    method,
                    PC=PC,
                    Nperm=Nperm,
                    p=p,
                    ranking=ranking)
Esempio n. 9
0
    def fromargs(self, rawargs): 
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if len(args) < 3:
            raise base.InvalidArgumentException("Must provide all necessary arguments")
            

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        replicates = "Sum"
        normalization = kwargs.get("n", "TTR")
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata,
                annotationPath,
                output_file,
                replicates,
                normalization,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 10
0
    def fromargs(self, rawargs): 
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        replicates = kwargs.get("r", "Sum")
        minread = int(kwargs.get("m", 1))
        normalization = None
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata,
                annotationPath,
                output_file,
                replicates,
                normalization,
                LOESS,
                ignoreCodon,
                minread,
                NTerminus,
                CTerminus)
Esempio n. 11
0
    def fromargs(self, rawargs): 
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        replicates = kwargs.get("r", "Sum")
        minread = int(kwargs.get("m", 1))
        normalization = None
        LOESS = False
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN","0"))
        CTerminus = float(kwargs.get("iC","0"))

        return self(ctrldata,
                annotationPath,
                output_file,
                replicates,
                normalization,
                LOESS,
                ignoreCodon,
                minread,
                NTerminus,
                CTerminus)
Esempio n. 12
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (kwargs.get('-help', False) or kwargs.get('h', False)):
            print(AnovaMethod.usage_string())
            sys.exit(0)

        combined_wig = args[0]
        annotation = args[2]
        metadata = args[1]
        output_file = args[3]
        normalization = kwargs.get("n", "TTR")
        NTerminus = float(kwargs.get("iN", 0.0))
        CTerminus = float(kwargs.get("iC", 0.0))
        PC = int(kwargs.get("PC", 5))
        ignored_conditions = list(filter(None, kwargs.get("-ignore-conditions", "").split(",")))
        included_conditions = list(filter(None, kwargs.get("-include-conditions", "").split(",")))

        # check for unrecognized flags
        flags = "-n --ignore-conditions --include-conditions -iN -iC -PC".split()
        for arg in rawargs:
          if arg[0]=='-' and arg not in flags:
            self.transit_error("flag unrecognized: %s" % arg)
            print(AnovaMethod.usage_string())
            sys.exit(0)

        return self(combined_wig, metadata, annotation, normalization, output_file, ignored_conditions, included_conditions, NTerminus, CTerminus, PC)
Esempio n. 13
0
 def fromargs(self, rawargs): 
     (args, kwargs) = transit_tools.cleanargs(rawargs)
     if (kwargs.get('-help', False)): print(self.usage_string()); sys.exit(0)
     if len(args)<2: print(self.usage_string()); sys.exit(0)
     self.gene_means = args[0]
     self.outfile = args[1]
     self.filetype = "gene_means"
     if "-anova" in rawargs: self.filetype = "anova"
     if "-zinb" in rawargs: self.filetype = "zinb"
     return self(self.gene_means,outfile=self.outfile)
Esempio n. 14
0
    def fromargs(self, rawargs):
        if not hasR:
            print("Error: R and rpy2 (~= 3.0) required to run ZINB analysis.")
            print(
                "After installing R, you can install rpy2 using the command \"pip install 'rpy2~=3.0'\""
            )
            sys.exit(0)

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (kwargs.get('-help', False) or kwargs.get('h', False)):
            print(ZinbMethod.usage_string())
            sys.exit(0)

        if (kwargs.get('v', False)):
            global DEBUG
            DEBUG = True

        if (kwargs.get('-gene', False)):
            global GENE
            GENE = kwargs.get('-gene', None)

        combined_wig = args[0]
        metadata = args[1]
        annotation = args[2]
        output_file = args[3]
        normalization = kwargs.get("n", "TTR")
        NTerminus = float(kwargs.get("iN", 5.0))
        CTerminus = float(kwargs.get("iC", 5.0))
        PC = float(kwargs.get("PC", 5.0))
        condition = kwargs.get("-condition", "Condition")
        covars = list(filter(None, kwargs.get("-covars", "").split(",")))
        interactions = list(
            filter(None,
                   kwargs.get("-interactions", "").split(",")))
        winz = True if "w" in kwargs else False
        ignored_conditions = list(
            filter(None,
                   kwargs.get("-ignore-conditions", "").split(",")))
        included_conditions = list(
            filter(None,
                   kwargs.get("-include-conditions", "").split(",")))

        # check for unrecognized flags
        flags = "-n --ignore-conditions --include-conditions -iN -iC -PC --condition --covars --interactions --gene".split(
        )
        for arg in rawargs:
            if arg[0] == '-' and arg not in flags:
                self.transit_error("flag unrecognized: %s" % arg)
                print(ZinbMethod.usage_string())
                sys.exit(0)

        return self(combined_wig, metadata, annotation, normalization,
                    output_file, ignored_conditions, included_conditions, winz,
                    NTerminus, CTerminus, condition, covars, interactions, PC)
Esempio n. 15
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)
        if (len(args) < 2):
            print("Error: Please specify Input and Output paths")
            print(self.usage_string())
            sys.exit(1)

        annotationPath = args[0]
        outpath = args[1]
        output_file = open(outpath, "w")

        return self(annotationPath, output_file)
Esempio n. 16
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)
        if (len(args) < 2):
            print "Error: Please specify Input and Output paths"
            print(self.usage_string())
            sys.exit(1)

        annotationPath = args[0]
        outpath = args[1]
        output_file = open(outpath, "w")

        return self(annotationPath, output_file)
Esempio n. 17
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        p = int(kwargs.get("p", 1))
        N = int(kwargs.get("S", 1000))
        M = kwargs.get("M", "GSEA")
        resamplingFile = args[0]
        geneSetFile = args[1]
        outpath = args[2]
        output = open(outpath, "w")  #The outputfile is opened here!!!

        return self(resamplingFile, geneSetFile, output, p, N, M)
Esempio n. 18
0
    def fromargs(self, rawargs): 
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if len(args) < 2:
            raise base.InvalidArgumentException("Must provide all necessary arguments")
            

        self.infile = args[0] # only 1 input wig file
        self.outfile = args[1] # if no arg give, could print to screen
        self.normalization = kwargs.get("n", "TTR") # check if it is a legal method name
        self.combined_wig = kwargs.get("c",False)

        return self(self.infile,self.outfile,self.normalization)
Esempio n. 19
0
    def fromargs(self, rawargs): 
        (args, kwargs) = transit_tools.cleanargs(rawargs)


        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        samples = int(kwargs.get("s", 10000))
        burnin = int(kwargs.get("b", 500))
        replicates = "Sum"
        normalization = None
        LOESS = False
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.0))
        CTerminus = float(kwargs.get("iC", 0.0))

        pi0 = float(kwargs.get("pi0", 0.5))
        pi1 = float(kwargs.get("pi1", 0.5))
        M0 = float(kwargs.get("M0", 1.0))
        M1 = float(kwargs.get("M1", 1.0))
        a0 = float(kwargs.get("a0", 10.0))
        a1 = float(kwargs.get("a1", 10.0))
        b0 = float(kwargs.get("b0", 1.0))
        b1 = float(kwargs.get("b1", 1.0))
        alpha_w = float(kwargs.get("aw", 0.5))
        beta_w = float(kwargs.get("bw", 0.5))


        return self(ctrldata,
                annotationPath,
                output_file,
                samples=samples,
                burnin=burnin,
                replicates=replicates,
                normalization=normalization,
                LOESS=LOESS,
                ignoreCodon=ignoreCodon,
                NTerminus=NTerminus,
                CTerminus=CTerminus,
                pi0=pi0,
                pi1=pi1,
                M0=M0,
                M1=M1,
                a0=a0,
                a1=a1,
                b0=b0,
                b1=b1,
                alpha_w=alpha_w,
                beta_w=beta_w)
Esempio n. 20
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        samples = int(kwargs.get("s", 10000))
        burnin = int(kwargs.get("b", 500))
        replicates = "Sum"
        normalization = None
        LOESS = False
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.0))
        CTerminus = float(kwargs.get("iC", 0.0))

        pi0 = float(kwargs.get("pi0", 0.5))
        pi1 = float(kwargs.get("pi1", 0.5))
        M0 = float(kwargs.get("M0", 1.0))
        M1 = float(kwargs.get("M1", 1.0))
        a0 = float(kwargs.get("a0", 10.0))
        a1 = float(kwargs.get("a1", 10.0))
        b0 = float(kwargs.get("b0", 1.0))
        b1 = float(kwargs.get("b1", 1.0))
        alpha_w = float(kwargs.get("aw", 0.5))
        beta_w = float(kwargs.get("bw", 0.5))

        return self(ctrldata,
                    annotationPath,
                    output_file,
                    samples=samples,
                    burnin=burnin,
                    replicates=replicates,
                    normalization=normalization,
                    LOESS=LOESS,
                    ignoreCodon=ignoreCodon,
                    NTerminus=NTerminus,
                    CTerminus=CTerminus,
                    pi0=pi0,
                    pi1=pi1,
                    M0=M0,
                    M1=M1,
                    a0=a0,
                    a1=a1,
                    b0=b0,
                    b1=b1,
                    alpha_w=alpha_w,
                    beta_w=beta_w)
Esempio n. 21
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        normalization = kwargs.get("n", "TTR")
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata, annotationPath, output_file, normalization,
                    LOESS, ignoreCodon, NTerminus, CTerminus)
Esempio n. 22
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        isCombinedWig = kwargs.has_key('c')
        if (not isCombinedWig and len(args) < 2) or (isCombinedWig and len(args) < 1):
            raise base.InvalidArgumentException("Must provide all necessary arguments")
        if isCombinedWig:
            self.infile = kwargs.get("c") # only 1 input wig file
            self.outfile = args[0] # if no arg give, could print to screen
        else:
            self.infile = args[0] # only 1 input wig file
            self.outfile = args[1] # if no arg give, could print to screen
        self.normalization = kwargs.get("n", "TTR") # check if it is a legal method name
        self.combined_wig = isCombinedWig

        return self(self.infile,self.outfile,self.normalization)
Esempio n. 23
0
 def fromargs(self, rawargs):
     (args, kwargs) = transit_tools.cleanargs(rawargs)
     if len(rawargs) < 3:
         print(self.usage_string())
         sys.exit(-1)
     self.filetype = None
     if kwargs.get("anova", False): self.filetype = "anova"
     elif kwargs.get("zinb", False): self.filetype = "zinb"
     else:
         print(self.usage_string())
         sys.exit(-1)
     self.infile = args[0]
     self.outfile = args[1]
     self.qval = float(kwargs.get("qval", 0.05))
     self.topk = int(kwargs.get("topk", -1))
     return self(self.infile, outfile=self.outfile)
Esempio n. 24
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (kwargs.get('-help', False)):
            print(self.usage_string())
            sys.exit(0)

        self.wigs = args
        self.outfile = kwargs.get("o", None)
        self.combined_wig = kwargs.get("c", None)

        if self.combined_wig == None and len(self.wigs) == 0:
            print(self.usage_string())
            sys.exit(0)

        return self(self.wigs, outfile=self.outfile)
Esempio n. 25
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        replicates = kwargs.get("r", "Mean")
        normalization = kwargs.get("r", "TTR")
        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.0))
        CTerminus = float(kwargs.get("iC", 0.0))

        return self(ctrldata, annotationPath, output_file, replicates,
                    normalization, LOESS, ignoreCodon, NTerminus, CTerminus)
Esempio n. 26
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (kwargs.get('-help', False) or kwargs.get('h', False)):
            print(AnovaMethod.usage_string())
            sys.exit(0)

        combined_wig = args[0]
        annotation = args[1]
        metadata = args[2]
        output_file = args[3]
        normalization = kwargs.get("n", "TTR")
        ignored_conditions = set(
            kwargs.get("-ignore-conditions", "Unknown").split(","))

        return self(combined_wig, metadata, annotation, normalization,
                    output_file, ignored_conditions)
Esempio n. 27
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if len(args) < 3:
            raise base.InvalidArgumentException(
                "Must provide all necessary arguments")

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        replicates = "Sum"
        normalization = kwargs.get("n", "TTR")
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata, annotationPath, output_file, replicates,
                    normalization, LOESS, ignoreCodon, NTerminus, CTerminus)
Esempio n. 28
0
    def fromargs(self, rawargs):
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (len(args) != 3):  # wigs prot_table output
            print("Error: Incorrect number of args. See usage")
            print(self.usage_string())
            sys.exit(0)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        normalization = kwargs.get("n", "TTR")
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata, annotationPath, output_file, normalization,
                    LOESS, ignoreCodon, NTerminus, CTerminus)
Esempio n. 29
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldataA = args[0].split(",")
        ctrldataB = args[1].split(",")
        expdataA = args[2].split(",")
        expdataB = args[3].split(",")
        annotationPath = args[4]
        output_path = args[5]
        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        rope = float(kwargs.get("-rope", 0.5)) # fixed! changed int to float
        replicates = kwargs.get("r", "Sum")
        includeZeros = kwargs.get("iz", False)


        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))

        return self(ctrldataA,
                ctrldataB,
                expdataA,
                expdataB,
                annotationPath,
                output_file,
                normalization,
                samples,
                rope,
                includeZeros,
                replicates,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 30
0
    def fromargs(self, rawargs): 
        (args, kwargs) = transit_tools.cleanargs(rawargs)

        ctrldata = args[0].split(",")
        annotationPath = args[1]
        outpath = args[2]
        output_file = open(outpath, "w")

        normalization = kwargs.get("n", "TTR")
        LOESS = False
        ignoreCodon = True
        NTerminus = 0.0
        CTerminus = 0.0

        return self(ctrldata,
                annotationPath,
                output_file,
                normalization,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 31
0
    def fromargs(self, rawargs):
        if not hasR:
            print("Error: R and rpy2 (< 2.9.0) required to run ZINB analysis.")
            print("After installing R, you can install rpy2 using the command \"pip install 'rpy2<2.9.0'\"")
            sys.exit(0)

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        if (kwargs.get('-help', False) or kwargs.get('h', False)):
            print(ZinbMethod.usage_string())
            sys.exit(0)

        if (kwargs.get('v', False)):
            global DEBUG
            DEBUG = True

        if (kwargs.get('-gene', False)):
            global GENE
            GENE = kwargs.get('-gene', None)

        combined_wig = args[0]
        metadata = args[1]
        annotation = args[2]
        output_file = args[3]
        normalization = kwargs.get("n", "TTR")
        NTerminus = float(kwargs.get("iN", 5.0))
        CTerminus = float(kwargs.get("iC", 5.0))
        condition = kwargs.get("-condition", "Condition")
        covars = filter(None, kwargs.get("-covars", "").split(","))
        interactions = filter(None, kwargs.get("-interactions", "").split(","))
        winz = True if kwargs.has_key("w") else False
        ignored_conditions = filter(None, kwargs.get("-ignore-conditions", "").split(","))
        included_conditions = filter(None, kwargs.get("-include-conditions", "").split(","))
        if len(included_conditions) > 0 and len(ignored_conditions) > 0:
            self.transit_error("Cannot use both include-conditions and ignore-conditions flags")
            print(ZinbMethod.usage_string())
            sys.exit(0)

        return self(combined_wig, metadata, annotation, normalization, output_file, ignored_conditions, included_conditions, winz, NTerminus, CTerminus, condition, covars, interactions)
Esempio n. 32
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)


        ctrldata = args[0].split(",")
        expdata = args[1].split(",")
        annotationPath = args[2]
        output_path = args[3]
        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 100))
        adaptive = kwargs.get("a", False)
        doHistogram = kwargs.get("h", False)
        replicates = kwargs.get("r", "Sum")
    
        
        LOESS = kwargs.get("l", False)
        ignoreCodon = True
        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))

        return self(ctrldata,
                expdata,
                annotationPath,
                output_file,
                normalization,
                samples,
                adaptive,
                doHistogram,
                replicates,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus)
Esempio n. 33
0
 def test_cleanargs_flag_arguments_with_double_dash(self):
     TEST_RAWARGS = ["a", "b", "c", "-d", "1", "--p", "test this"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertFalse("p" in kwargs)
     self.assertFalse("--p" in kwargs)
     self.assertTrue("-p" in kwargs)
Esempio n. 34
0
 def test_cleanargs_flag_arguments_w_quotes(self):
     TEST_RAWARGS = ["a", "b", "c", "-d", "1", "-p", "test this"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertEqual(kwargs.get("p"), "test this")
Esempio n. 35
0
def run_main():
    (args, kwargs) = transit_tools.cleanargs(sys.argv[1:])
    main(*args, **kwargs)
Esempio n. 36
0
def run_main():
    (args, kwargs) = transit_tools.cleanargs(sys.argv[1:])
    main(*args, **kwargs)
Esempio n. 37
0
 def test_cleanargs_positional_arguments(self):
     TEST_RAWARGS = ["a", "b", "c", "-d", "1", "e"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertEqual(args, ["a", "b", "c", "e"])
Esempio n. 38
0
 def test_cleanargs_flag_arguments_w_quotes(self):
     TEST_RAWARGS = ["a", "b", "c", "-d", "1", "-p", "test this"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertEqual(kwargs.get("p"), "test this")
Esempio n. 39
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        isCombinedWig = True if kwargs.get('c', False) else False
        combinedWigParams = None
        if isCombinedWig:
            if (len(args) != 5):
                print("Error: Incorrect number of args. See usage")
                print(self.usage_string())
                sys.exit(0)
            combinedWigParams = {
                "combined_wig": kwargs.get('c'),
                "samples_metadata": args[0],
                "conditions": [args[1].lower(), args[2].lower()]
            }
            annot_paths = args[3].split(",")
            ctrldata = ""
            expdata = ""
            output_path = args[4]
        else:
            if (len(args) != 4):
                print("Error: Incorrect number of args. See usage")
                print(self.usage_string())
                sys.exit(0)
            ctrldata = args[0].split(",")
            expdata = args[1].split(",")
            annot_paths = args[2].split(",")
            output_path = args[3]
        annotationPath = annot_paths[0]
        diffStrains = False
        annotationPathExp = ""
        if len(annot_paths) == 2:
            annotationPathExp = annot_paths[1]
            diffStrains = True
        if (diffStrains and isCombinedWig):
            print("Error: Cannot have combined wig and different annotation files.")
            sys.exit(0)

        output_file = open(output_path, "w")

        # check for unrecognized flags
        flags = "-c -s -n -h -a -ez -PC -l -iN -iC --ctrl_lib --exp_lib -Z".split()
        for arg in rawargs:
          if arg[0]=='-' and arg not in flags:
            self.transit_error("flag unrecognized: %s" % arg)
            print(ZinbMethod.usage_string())
            sys.exit(0)

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        adaptive = kwargs.get("a", False)
        doHistogram = kwargs.get("h", False)
        replicates = kwargs.get("r", "Sum")
        excludeZeros = kwargs.get("ez", False)
        includeZeros = not excludeZeros
        pseudocount = float(kwargs.get("PC", 1.0)) # use -PC (new semantics: for LFCs) instead of -pc (old semantics: fake counts)

        Z = True if "Z" in kwargs else False

        LOESS = kwargs.get("l", False)
        ignoreCodon = True

        NTerminus = float(kwargs.get("iN", 0.00)) # integer interpreted as percentage
        CTerminus = float(kwargs.get("iC", 0.00))
        ctrl_lib_str = kwargs.get("-ctrl_lib", "")
        exp_lib_str = kwargs.get("-exp_lib", "")

        return self(ctrldata,
                expdata,
                annotationPath,
                output_file,
                normalization,
                samples,
                adaptive,
                doHistogram,
                includeZeros,
                pseudocount,
                replicates,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus,
                ctrl_lib_str,
                exp_lib_str, Z = Z, diffStrains = diffStrains, annotation_path_exp = annotationPathExp, combinedWigParams = combinedWigParams)
Esempio n. 40
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        isCombinedWig = True if kwargs.get('c', False) else False
        combinedWigParams = None
        if isCombinedWig:
            if (len(args) != 5):
                print("Error: Incorrect number of args. See usage")
                print(self.usage_string())
                sys.exit(0)
            combinedWigParams = {
                "combined_wig": kwargs.get('c'),
                "samples_metadata": args[0],
                "conditions": [args[1].lower(), args[2].lower()]
            }
            annot_paths = args[3].split(",")
            ctrldata = ""
            expdata = ""
            output_path = args[4]
        else:
            if (len(args) != 4):
                print("Error: Incorrect number of args. See usage")
                print(self.usage_string())
                sys.exit(0)
            ctrldata = args[0].split(",")
            expdata = args[1].split(",")
            annot_paths = args[2].split(",")
            output_path = args[3]
        annotationPath = annot_paths[0]
        diffStrains = False
        annotationPathExp = ""
        if len(annot_paths) == 2:
            annotationPathExp = annot_paths[1]
            diffStrains = True
        if (diffStrains and isCombinedWig):
            print(
                "Error: Cannot have combined wig and different annotation files."
            )
            sys.exit(0)

        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        adaptive = kwargs.get("a", False)
        doHistogram = kwargs.get("h", False)
        replicates = kwargs.get("r", "Sum")
        excludeZeros = kwargs.get("ez", False)
        includeZeros = not excludeZeros
        pseudocount = float(kwargs.get("pc", 0.00))

        Z = True if "Z" in kwargs else False

        LOESS = kwargs.get("l", False)
        ignoreCodon = True

        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))
        ctrl_lib_str = kwargs.get("-ctrl_lib", "")
        exp_lib_str = kwargs.get("-exp_lib", "")

        return self(ctrldata,
                    expdata,
                    annotationPath,
                    output_file,
                    normalization,
                    samples,
                    adaptive,
                    doHistogram,
                    includeZeros,
                    pseudocount,
                    replicates,
                    LOESS,
                    ignoreCodon,
                    NTerminus,
                    CTerminus,
                    ctrl_lib_str,
                    exp_lib_str,
                    Z=Z,
                    diffStrains=diffStrains,
                    annotation_path_exp=annotationPathExp,
                    combinedWigParams=combinedWigParams)
Esempio n. 41
0
 def test_cleanargs_flag_without_arguments(self):
     TEST_RAWARGS = ["test", "-p"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertTrue(kwargs.get("p", False))
Esempio n. 42
0
 def test_cleanargs_positional_arguments_w_quotes(self):
     TEST_RAWARGS = ["a", "b", "c", "-d", "1", "test this"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertEqual(args, ["a", "b", "c", "test this"])
Esempio n. 43
0
 def test_cleanargs_negative_arguments(self):
     TEST_RAWARGS = ["test", "-p", "-10"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertEqual(int(kwargs.get("p",0)), -10)
Esempio n. 44
0
 def test_cleanargs_flag_without_arguments(self):
     TEST_RAWARGS = ["test", "-p"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertTrue(kwargs.get("p",False))
Esempio n. 45
0
        -l              :=  Perform LOESS Correction; Helps remove possible genomic position bias. Default: Turned Off.
        -iN <float>     :=  Ignore TAs occuring at given fraction of the N terminus. Default: -iN 0.0
        -iC <float>     :=  Ignore TAs occuring at given fraction of the C terminus. Default: -iC 0.0
        """ % (sys.argv[0])





    



if __name__ == "__main__":

    (args, kwargs) = transit_tools.cleanargs(sys.argv)

    #TODO: Figure out issue with inputs (transit requires initial method name, running as script does not !!!!)

    G = RankProductMethod.fromargs(sys.argv[1:])

    G.console_message("Printing the member variables:")   
    G.print_members()

    print ""
    print "Running:"

    G.Run()


Esempio n. 46
0
 def test_cleanargs_negative_arguments(self):
     TEST_RAWARGS = ["test", "-p", "-10"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertEqual(int(kwargs.get("p", 0)), -10)
Esempio n. 47
0
    def fromargs(self, rawargs):

        (args, kwargs) = transit_tools.cleanargs(rawargs)

        isCombinedWig = True if kwargs.get('c', False) else False
        combinedWigParams = None
        if isCombinedWig:
            if (len(args) != 5):
                print("Error: Incorrect number of args. See usage")
                print(self.usage_string())
                sys.exit(0)
            combinedWigParams = {
                "combined_wig": kwargs.get('c'),
                "samples_metadata": args[0],
                "conditions": [args[1].lower(), args[2].lower()]
            }
            annot_paths = args[3].split(",")
            ctrldata = ""
            expdata = ""
            output_path = args[4]
        else:
            if (len(args) != 4):
                print("Error: Incorrect number of args. See usage")
                print(self.usage_string())
                sys.exit(0)
            ctrldata = args[0].split(",")
            expdata = args[1].split(",")
            annot_paths = args[2].split(",")
            output_path = args[3]
        annotationPath = annot_paths[0]
        diffStrains = False
        annotationPathExp = ""
        if len(annot_paths) == 2:
            annotationPathExp = annot_paths[1]
            diffStrains = True
        if (diffStrains and isCombinedWig):
            print("Error: Cannot have combined wig and different annotation files.")
            sys.exit(0)

        output_file = open(output_path, "w")

        normalization = kwargs.get("n", "TTR")
        samples = int(kwargs.get("s", 10000))
        adaptive = kwargs.get("a", False)
        doHistogram = kwargs.get("h", False)
        replicates = kwargs.get("r", "Sum")
        excludeZeros = kwargs.get("ez", False)
        includeZeros = not excludeZeros
        pseudocount = float(kwargs.get("pc", 0.00))

        Z = True if "Z" in kwargs else False

        LOESS = kwargs.get("l", False)
        ignoreCodon = True

        NTerminus = float(kwargs.get("iN", 0.00))
        CTerminus = float(kwargs.get("iC", 0.00))
        ctrl_lib_str = kwargs.get("-ctrl_lib", "")
        exp_lib_str = kwargs.get("-exp_lib", "")

        return self(ctrldata,
                expdata,
                annotationPath,
                output_file,
                normalization,
                samples,
                adaptive,
                doHistogram,
                includeZeros,
                pseudocount,
                replicates,
                LOESS,
                ignoreCodon,
                NTerminus,
                CTerminus,
                ctrl_lib_str,
                exp_lib_str, Z = Z, diffStrains = diffStrains, annotation_path_exp = annotationPathExp, combinedWigParams = combinedWigParams)
Esempio n. 48
0
        "#ORF\tName\tNumber of TA Sites\tMean count (Strain A Time 1)\tMean count (Strain A Time 2)\tMean count (Strain B Time 1)\tMean count (Strain B Time 2)\tMean logFC (Strain A)\tMean logFC (Strain B) \tMean delta logFC\tLower Bound delta logFC\tUpper Bound delta logFC\tProb. of delta-logFC being within ROPE\tAdjusted Probability (%s)\tIs HDI outside ROPE?\tType of Interaction\n"
        % adjusted_label)

    # Write gene results
    for i, row in enumerate(data):
        #1   2    3        4                5              6               7                8            9            10              11             12            13         14
        orf, name, n, mean_muA1_post, mean_muA2_post, mean_muB1_post, mean_muB2_post, mean_logFC_A, mean_logFC_B, mean_delta_logFC, l_delta_logFC, u_delta_logFC, probROPE, not_HDI_overlap_bit = row
        type_of_interaction = "No Interaction"
        if ((doBFDR or doFWER) and adjusted_prob[i] < 0.05):
            type_of_interaction = classify_interaction(mean_delta_logFC,
                                                       mean_logFC_B,
                                                       mean_logFC_A)
        elif not (doBFDR or doFWER) and not_HDI_overlap_bit:
            type_of_interaction = classify_interaction(mean_delta_logFC,
                                                       mean_logFC_B,
                                                       mean_logFC_A)

        new_row = tuple(
            list(row[:-1]) +
            [adjusted_prob[i], not_HDI_overlap_bit, type_of_interaction])
        sys.stdout.write(
            "%s\t%s\t%d\t%1.2f\t%1.2f\t%1.2f\t%1.2f\t%1.2f\t%1.2f\t%1.2f\t%1.2f\t%1.2f\t%1.8f\t%1.8f\t%s\t%s\n"
            % new_row)


if __name__ == "__main__":

    (args, kwargs) = transit_tools.cleanargs(sys.argv[1:])
    (data, adjusted_prob, adjusted_label) = main(args, kwargs)
    print_results(args, kwargs, data, adjusted_prob, adjusted_label)
Esempio n. 49
0
 def test_cleanargs_flag_arguments_with_double_dash(self):
     TEST_RAWARGS = ["a", "b", "c", "-d", "1", "--p", "test this"]
     args, kwargs = transit_tools.cleanargs(TEST_RAWARGS)
     self.assertFalse("p" in kwargs)
     self.assertFalse("--p" in kwargs)
     self.assertTrue("-p" in kwargs)