Advertisement
Guest User

Untitled

a guest
Dec 9th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. #!/usr/bin/python
  2.  
  3. import re
  4.  
  5. SampleDict = {}
  6. with open("samplelist.txt") as samples:
  7.  
  8. for line in samples:
  9. (key, val) = line.split()
  10. SampleDict[key] = val
  11.  
  12. bcodes = [line.rstrip('\n') for line in open('barcodes.txt')]
  13.  
  14. for i in range(len(bcodes)):
  15.  
  16. curcode = str(bcodes[i].strip('\r'))
  17.  
  18. with open('fastqjoin.join') as data:
  19.  
  20. outfile = open("demultiplexed_fastqjoin.join_seqs.fna", 'a+')
  21. seqNumb = 0
  22.  
  23. for line in data:
  24. seqName = line.strip('\n')
  25. seqInfo = seqName[0:-8]
  26.  
  27. illumbc = seqName[-8:]
  28. demuxbc = str(curcode+illumbc)
  29.  
  30. seqData = data.next().strip('\n')
  31. inlineF = 4+int(len(curcode))+4
  32. inlineR = 2+(8-int(len(curcode)))+3
  33.  
  34. plusSep = data.next().strip('\n')
  35. qScores = data.next().strip('\n')
  36.  
  37. if re.match("...." + curcode + "...." + "TCACTCCTACGGGAGG", seqData):
  38. for k,v in SampleDict.items():
  39. if demuxbc == v:
  40. SampleID = k
  41. seqNumb += 1
  42. outfile.writelines([">", str(SampleID), "_", str(seqNumb), \
  43. " ", seqInfo, " new_bc=", demuxbc, " bc_diffs=0", "\n", \
  44. seqData[inlineF:-inlineR], "\n"])
  45. outfile.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement