Mercurial > repos > xuebing > sharplabtool
diff mytools/seqshuffle.py @ 7:f0dc65e7f6c0
Uploaded
author | xuebing |
---|---|
date | Fri, 09 Mar 2012 19:59:07 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mytools/seqshuffle.py Fri Mar 09 19:59:07 2012 -0500 @@ -0,0 +1,49 @@ +import sys + +from altschulEriksonDinuclShuffle import * + +def readFastaFile(infile,outfile): + + fin = open(infile) + out = open(outfile,'w') + + currSeq='' + currSeqname=None + for line in fin: + if '>' in line: + if currSeqname !=None: + out.write(currSeqname+dinuclShuffle(currSeq)+'\n') + currSeqname=None + currSeq='' + currSeqname=line + else: + currSeq=currSeq+line.strip().upper() + + if currSeqname!=None: + out.write(currSeqname+dinuclShuffle(currSeq)+'\n') + + fin.close() + out.close() + +def readrawseq(infile,outfile): + ''' + each line is a sequence + ''' + fin = open(infile) + out = open(outfile,'w') + for line in fin: + out.write(dinuclShuffle(line.strip().upper())+'\n') + fin.close() + out.close() + +def main(): + seqfile = sys.argv[1] + outfile = sys.argv[2] + fasta = sys.argv[3] + + if fasta == 'fasta': + readFastaFile(seqfile,outfile) + else: + readrawseq(seqfile,outfile) + +main()