PYTHON 8
2D.py Guest on 20th November 2020 06:10:38 PM
  1. #This Program calculate Accissibility of amino acid and count the
  2. test=""
  3. co=0   #line count
  4. c=0    # count home matrix
  5. Plist=0
  6. c1=-1
  7. con=0
  8. aacount=0
  9. list=''
  10. count=0
  11. AA_Helix=[0]*20
  12. AA_Beta=[0]*20
  13. AA_Coil=[0]*20
  14. MaxASA=['A','G','I','L','M','F','P','W','V','R','N','D','C','E','Q','H','K','S','T','Y']
  15. #import glob
  16. #path=r'/var/www/html/*.dssp'
  17. #files=glob.glob(path)
  18. #for file in files:
  19. with open (r'pdb.dssp','r') as dssp:
  20.                  for l in dssp:
  21.                      co=co+1                   #line count
  22.                      if co>28:
  23.                         aacount=aacount+1       # count aa numbers
  24. with open (r'pdb.dssp','r') as dsspfile:
  25.                   for line in dsspfile:
  26.                          con=con+1              # line count
  27.                          if con==3:
  28.                              line=line[60:]
  29.                              line=line.strip()
  30.                              #list=list + '>' + line[0:4] + '\n'             # PdbId insert To list
  31.                          if con>28:
  32.                              for i in MaxASA:
  33.                                                                         # count matrix home
  34.                                 c1=c1+1                          # counter for members of MaxASA  the first time is -1 because if was 0  the first member of MaxASA Were not considered
  35.                                 if line[19]==i:                  # line[19] is coulman of aa in dssp file  j is aa name in MaxASA list
  36.                                     Plist=c1
  37.                                     if line[22] == 'G' or line[22] == 'H' or line[22] == 'I':
  38.                                        AA_Helix [Plist]=AA_Helix[Plist]+1
  39.                                     if line[22] == 'B' or line[22] == 'E':
  40.                                         AA_Beta[Plist] = AA_Beta[Plist] + 1
  41.                                     if line[22] == 'S' or line[22] == 'T' or line[22] == " ":
  42.                                         AA_Coil[Plist] = AA_Coil[Plist] + 1
  43.  
  44.                              c1=-1
  45.                   if aacount != 0  :
  46.                      for i in AA_Helix:
  47.                          list = list + ',' + str('%.3f' % (i / float(aacount)))
  48.                      for j in AA_Beta:
  49.                            list=list + ',' + str( '%.3f' % (j / float(aacount)))
  50.                      for x in AA_Coil:
  51.                            list = list + ',' + str('%.3f' % (x / float(aacount)))
  52.                      list=list+'\n'
  53.                   else:
  54.                       list=list + "," + str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ',' + str("?") + ','+        str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ','+ str("?") + ',' + str("?") + '\n'
  55.                   con = 0
  56.                   aacount = 0
  57.                   count = 0
  58.                   AA_Helix = [0] * 20
  59.                   AA_Beta = [0] * 20
  60.                   AA_Coil = [0] * 20
  61.                   co=0
  62.  
  63.  
  64.  
  65. with open(r'2D.csv','w') as result:
  66.     result.write(list)

Paste is for source code and general debugging text.

Login or Register to edit, delete and keep track of your pastes and more.

Recent Pastes

Raw Paste

Login or Register to edit or fork this paste. It's free.