X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=erange.git;a=blobdiff_plain;f=buildMatrix.py;fp=buildMatrix.py;h=c7b6dd0c801025552c365003cf9067b2550c6b0c;hp=361f56e20d2e23d19606a4958ef955479d3fc135;hb=0d3e3112fd04c2e6b44a25cacef1d591658ad181;hpb=5e4ae21098dba3d1edcf11e7279da0d84c3422e4 diff --git a/buildMatrix.py b/buildMatrix.py index 361f56e..c7b6dd0 100755 --- a/buildMatrix.py +++ b/buildMatrix.py @@ -4,10 +4,12 @@ # # Created by Ali Mortazavi on 3/6/09. # -import sys, string, optparse -from commoncode import writeLog +import sys +import string +import optparse +from commoncode import writeLog, getConfigParser, getConfigOption, getConfigBoolOption -versionString = "%prog: version 1.3" +versionString = "buildMatrix: version 1.5" print versionString @@ -17,11 +19,7 @@ def main(argv=None): usage = "usage: python %prog matrix.step.N-1 data.part matrix.step.N [--rescale] [--truncate maxRPKM] [--log altlogfile]" - parser = optparse.OptionParser(usage=usage) - parser.add_option("--rescale", action="store_true", dest="rescale") - parser.add_option("--truncate", type="int", dest="maxRPKM") - parser.add_option("--log", dest="logfilename") - parser.set_defaults(rescale=False, maxRPKM=None, logfilename="buildMatrix.log") + parser = makeParser(usage) (options, args) = parser.parse_args(argv[1:]) if len(args) < 3: @@ -43,6 +41,23 @@ def main(argv=None): options.rescale, options.logfilename) +def makeParser(usage=""): + parser = optparse.OptionParser(usage=usage) + parser.add_option("--rescale", action="store_true", dest="rescale") + parser.add_option("--truncate", type="int", dest="maxRPKM") + parser.add_option("--log", dest="logfilename") + + configParser = getConfigParser() + section = "buildMatrix" + rescale = getConfigBoolOption(configParser, section, "rescale", False) + maxRPKM = getConfigOption(configParser, section, "maxRPKM", None) + logfilename = getConfigOption(configParser, section, "logfilename", "buildMatrix.log") + + parser.set_defaults(rescale=rescale, maxRPKM=maxRPKM, logfilename=logfilename) + + return parser + + def buildMatrix(inFileName, colfilename, outfilename, truncateRPKM, maxRPKM=100000000, rescale=False, logfilename="buildMatrix.log"):