5 # Created by Ali Mortazavi on 1/25/08.
7 """ usage: python %s rpkmFile outFile [--transcriptome size] [--cells count] [--efficiency fraction]
8 where transcriptome size is in Gbp, cell count is in arbitrary units and efficiency is a fraction
13 from commoncode import getConfigParser, getConfigFloatOption
19 print "transcripts: version 3.1"
20 usage = "usage: python %prog rpkmFile outFile [options]"
22 parser = makeParser(usage)
23 (options, args) = parser.parse_args(argv[1:])
32 transcripts(infile, outfile, options.tSize, options.cellCount, options.efficiency)
35 def makeParser(usage=""):
36 parser = optparse.OptionParser(usage=usage)
37 parser.add_option("--transcriptome", type="float", dest="tSize",
38 help="transcriptome size in Gbp [default 200000.0]")
39 parser.add_option("--cells", type="float", dest="cellCount",
40 help="arbitrary units [default 1e6]")
41 parser.add_option("--efficiency", type="float", dest="efficiency",
42 help="fraction [default 0.3]")
44 configParser = getConfigParser()
45 section = "transcripts"
46 tSize = getConfigFloatOption(configParser, section, "tSize", 200000.0)
47 cellCount = getConfigFloatOption(configParser, section, "cellCount", 1e6)
48 efficiency = getConfigFloatOption(configParser, section, "efficiency", 0.3)
50 parser.set_defaults(tSize=tSize, cellCount=cellCount, efficiency=efficiency)
55 def transcripts(infilename, outfilename, tSize=200000, cellCount=1e6, efficiency=0.3):
56 infile = open(infilename)
57 outfile = open(outfilename, "w")
59 fields = line.strip().split()
60 rpkm = float(fields[-1])
61 transcripts = rpkm * tSize
62 transPerCell = transcripts / cellCount / efficiency
63 outfile.write("%s\t%.1f\t%.1f\n" % (fields[0], transcripts, transPerCell))
68 if __name__ == "__main__":