X-Git-Url: http://woldlab.caltech.edu/gitweb/?p=erange.git;a=blobdiff_plain;f=featureIntersects.py;fp=featureIntersects.py;h=c24b79edb312fae6c0b19f0d7e3d3ffb45d12984;hp=cd357cc072c5cc7aa4460371439ef59c428873f5;hb=77dccd7c98d8cdb60caaf178b1123df71ea662c9;hpb=bc30aca13e5ec397c92e67002fbf7a103130b828 diff --git a/featureIntersects.py b/featureIntersects.py index cd357cc..c24b79e 100755 --- a/featureIntersects.py +++ b/featureIntersects.py @@ -38,7 +38,7 @@ def main(argv=None): def makeParser(usage=""): parser = optparse.OptionParser(usage=usage) - parser.add_option("--cistype", action="store_false", dest="cistype") + parser.add_option("--cistype", dest="cistype") parser.add_option("--radius", type="int", dest="radius") configParser = getConfigParser() @@ -52,10 +52,19 @@ def makeParser(usage=""): def featureIntersects(tabFileName, cistype="TFBSCONSSITES", radius=100): - tabfile = open(tabFileName) - previous = "" + + posList = getPositionList(tabFileName) + feats = featuresIntersecting("human", posList, radius, cistype) + featkeys = feats.keys() + featkeys.sort() + for (chrom, pos) in featkeys: + print "chr%s:%d-%d\t%s" % (chrom, pos, pos + 20, str(feats[(chrom, pos)])) + +def getPositionList(tabFileName): + previous = "" posList = [] + tabfile = open(tabFileName) for line in tabfile: fields = line.split("\t") current = fields[0] @@ -66,11 +75,7 @@ def featureIntersects(tabFileName, cistype="TFBSCONSSITES", radius=100): chrom = fields[1][3:] posList.append((chrom, (int(fields[2]) + int(fields[3]))/2)) - feats = featuresIntersecting("human", posList, radius, cistype) - featkeys = feats.keys() - featkeys.sort() - for (chrom, pos) in featkeys: - print "chr%s:%d-%d\t%s" % (chrom, pos, pos + 20, str(feats[(chrom, pos)])) + return posList if __name__ == "__main__":