13 from cistematic.core import featuresIntersecting
15 print "%prog: version 1.0"
22 usage = "usage: python %s tabfile [--cistype type] [--radius radius]"
24 parser = optparse.OptionParser(usage=usage)
25 parser.add_option("--cistype", action="store_false", dest="cistype")
26 parser.add_option("--radius", type="int", dest="radius")
27 parser.set_defaults(cistype="TFBSCONSSITES", radius=100)
28 (options, args) = parser.parse_args(argv[1:])
36 featureIntersects(tabfile, options.cistype, options.radius)
39 def featureIntersects(tabFileName, cistype="TFBSCONSSITES", radius=100):
40 tabfile = open(tabFileName)
45 fields = line.split("\t")
47 if previous == current:
52 posList.append((chrom, (int(fields[2]) + int(fields[3]))/2))
54 feats = featuresIntersecting("human", posList, radius, cistype)
55 featkeys = feats.keys()
57 for (chrom, pos) in featkeys:
58 print "chr%s:%d-%d\t%s" % (chrom, pos, pos + 20, str(feats[(chrom, pos)]))
61 if __name__ == "__main__":