now support -o output option, useful for pipelines
git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@3959 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
parent
9076c0b28b
commit
669d9096e3
|
|
@ -15,6 +15,9 @@ if __name__ == "__main__":
|
||||||
parser.add_option("-s", "--s", dest="skip",
|
parser.add_option("-s", "--s", dest="skip",
|
||||||
type='int', default=0,
|
type='int', default=0,
|
||||||
help="Only print out every 1 / skip records")
|
help="Only print out every 1 / skip records")
|
||||||
|
parser.add_option("-o", "--output", dest="OUTPUT",
|
||||||
|
type='string', default=None,
|
||||||
|
help="Path to output file. stdout if not provided")
|
||||||
|
|
||||||
(OPTIONS, args) = parser.parse_args()
|
(OPTIONS, args) = parser.parse_args()
|
||||||
if len(args) > 1:
|
if len(args) > 1:
|
||||||
|
|
@ -28,11 +31,14 @@ if __name__ == "__main__":
|
||||||
if OPTIONS.fields == None:
|
if OPTIONS.fields == None:
|
||||||
sys.exit("Fields argument must be provided")
|
sys.exit("Fields argument must be provided")
|
||||||
|
|
||||||
|
out = sys.stdout
|
||||||
|
if OPTIONS.OUTPUT != None: out = open(OPTIONS.OUTPUT, 'w')
|
||||||
|
|
||||||
fields = OPTIONS.fields.split(',')
|
fields = OPTIONS.fields.split(',')
|
||||||
for header, vcf, count in lines2VCF(src, extendedOutput = True):
|
for header, vcf, count in lines2VCF(src, extendedOutput = True):
|
||||||
#print vcf, count
|
#print vcf, count
|
||||||
if count == 1 and vcf.hasHeader():
|
if count == 1 and vcf.hasHeader():
|
||||||
print '\t'.join(fields)
|
print >> out, '\t'.join(fields)
|
||||||
|
|
||||||
if counter > 0:
|
if counter > 0:
|
||||||
counter -= 1
|
counter -= 1
|
||||||
|
|
@ -41,4 +47,4 @@ if __name__ == "__main__":
|
||||||
if OPTIONS.filter and vcf.failsFilters():
|
if OPTIONS.filter and vcf.failsFilters():
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
print '\t'.join([ str(vcf.getField(field, '0')) for field in fields])
|
print >> out, '\t'.join([ str(vcf.getField(field, '0')) for field in fields])
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ class VCFRecord:
|
||||||
#def getInfo(self): return self.get("INFO")
|
#def getInfo(self): return self.get("INFO")
|
||||||
def getInfo(self):
|
def getInfo(self):
|
||||||
def info2str(x,y):
|
def info2str(x,y):
|
||||||
if type(y) == bool:
|
if type(y) == bool or x == '.':
|
||||||
return str(x)
|
return str(x)
|
||||||
else:
|
else:
|
||||||
return str(x) + '=' + str(y)
|
return str(x) + '=' + str(y)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue