# HG changeset patch # User xuebing # Date 1333244940 14400 # Node ID e72172a0a429e0cd83a44404e91a213089e7dd96 # Parent f9d894fb823cecbc188bd5c05d63758c7c5b12d3 Uploaded diff -r f9d894fb823c -r e72172a0a429 seq_shuffle_dinucleotide.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/seq_shuffle_dinucleotide.py Sat Mar 31 21:49:00 2012 -0400 @@ -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()