Advertisement
Guest User

Untitled

a guest
Mar 17th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1.  
  2. import logging
  3. import argparse
  4. from Bio.SeqRecord import SeqRecord
  5. from Bio import SeqIO
  6. from Bio.PDB import PDBParser
  7. from Bio.PDB import PDBIO
  8. from Bio.PDB.Atom import PDBConstructionWarning
  9.  
  10.  
  11. pdb=('1kxk.pdb')
  12. chain_ids = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U',
  13. 'V', 'W', 'X', 'Y', 'Z']
  14. argument = '1-10,11-20,23-30'
  15. range_set= str(argument)
  16. range_set=range_set.split(',')
  17. range_set_list = []
  18.  
  19. for i in range_set:
  20. i = i.replace('-',',')
  21. #range_set_list = [i]
  22. i=i.split(',')
  23. range_set_list.append(i)
  24. #print i
  25.  
  26. print range_set_list
  27. #print argument
  28. struc = PDBParser().get_structure('struc', pdb)
  29.  
  30. def change_chains_ids(struc,chain_ids,range_set_list):
  31. r_ids =[]
  32. ch_ids = []
  33. for s in struc:
  34. for c in s:
  35. #print c
  36. # for r in c:
  37. for r,ntr, ids_ch in zip(c,range_set_list,chain_ids):
  38. #print int(ntr[0])
  39. #print ids_ch,ntr
  40. for r.id in range(int(ntr[0]),int(ntr[1])):
  41. c.id = ids_ch
  42. #r_ids.append(r.id)
  43. #ch_ids.append(c.id)
  44. #print r.id,c.id
  45. struc1=struc
  46. #print struc1.get_chains(), r_ids
  47. return ch_ids, struc1
  48.  
  49. #for i in c.id:
  50.  
  51. # main
  52. if __name__ == '__main__':
  53. print type(change_chains_ids(struc, chain_ids, range_set_list))
  54. struc1 = change_chains_ids(struc,chain_ids,range_set_list)
  55. print struc1
  56.  
  57. for chain in struc1.get_chains():
  58. io.set_structure(chain)
  59. io.save(pdb.get_id() + "_" + chain.get_id() + ".pdb")
  60.  
  61. #nowa = change_chains_ids(struc, chain_ids, range_set_list)[1]
  62. #io = PDBIO()
  63. #io.set_structure(nowa)
  64. #io.save("out.pdb")
  65.  
  66. #new_struc = PDBParser().set_structure(change_chains_ids(struc, chain_ids, range_set_list).set_structure())
  67.  
  68. #new_struc = PDBParser().get_structure("new_str",change_chains_ids(struc, chain_ids, range_set_list))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement