SURFACE-Bind
  • Home
  • Analysis
  • Protein Families
    • Enzymes
    • Receptors
    • Transporters
    • Miscellaneous
    • Unclassified
    • Unmatched
  • About
  1. IG
  2. P01833

  • GPCR
    • A3KFT3
    • A4D2G3
    • A6NCV1
    • A6ND48
    • A6NDH6
    • A6NDL8
    • A6NET4
    • A6NF89
    • A6NGY5
    • A6NH00
    • A6NHA9
    • A6NHG9
    • A6NIJ9
    • A6NJZ3
    • A6NKK0
    • A6NL08
    • A6NL26
    • A6NM03
    • A6NM76
    • A6NMS3
    • A6NMU1
    • A6NMZ5
    • A6NND4
    • B2RN74
    • O00144
    • O00155
    • O00222
    • O00270
    • O00398
    • O00421
    • O00590
    • O14581
    • O14626
    • O14842
    • O14843
    • O15218
    • O15303
    • O15354
    • O15529
    • O15552
    • O43193
    • O43194
    • O43603
    • O43613
    • O43614
    • O43749
    • O43869
    • O60353
    • O60403
    • O60404
    • O60412
    • O60431
    • O60755
    • O75084
    • O75388
    • O75473
    • O75899
    • O76000
    • O76001
    • O76002
    • O76099
    • O76100
    • O95006
    • O95007
    • O95013
    • O95047
    • O95136
    • O95221
    • O95222
    • O95371
    • O95665
    • O95800
    • O95838
    • O95918
    • O95977
    • P0C7N1
    • P0C7N5
    • P0C7N8
    • P0C7T2
    • P0C7T3
    • P0C604
    • P0C617
    • P0C623
    • P0C626
    • P0C628
    • P0C629
    • P0C645
    • P0C646
    • P03999
    • P04201
    • P07550
    • P08172
    • P08173
    • P08588
    • P08908
    • P08912
    • P08913
    • P11229
    • P13945
    • P14416
    • P18089
    • P18825
    • P20309
    • P21452
    • P21453
    • P21462
    • P21554
    • P21728
    • P21730
    • P21731
    • P21917
    • P21918
    • P25021
    • P25024
    • P25025
    • P25089
    • P25100
    • P25103
    • P25105
    • P25106
    • P25116
    • P25929
    • P28221
    • P28222
    • P28335
    • P28566
    • P29274
    • P29275
    • P29371
    • P30411
    • P30518
    • P30542
    • P30550
    • P30559
    • P30872
    • P30874
    • P30939
    • P30953
    • P30954
    • P30968
    • P30988
    • P31391
    • P32238
    • P32241
    • P32245
    • P32246
    • P32247
    • P32248
    • P32249
    • P32302
    • P32745
    • P33032
    • P34969
    • P34972
    • P34981
    • P34982
    • P34995
    • P34998
    • P35346
    • P35367
    • P35368
    • P35372
    • P35408
    • P35410
    • P35414
    • P35462
    • P37288
    • P41143
    • P41145
    • P41146
    • P41180
    • P41231
    • P41586
    • P41587
    • P41968
    • P43088
    • P43115
    • P43116
    • P43119
    • P43220
    • P43657
    • P46089
    • P46092
    • P46093
    • P46095
    • P46663
    • P47211
    • P47775
    • P47804
    • P47872
    • P47881
    • P47883
    • P47884
    • P47887
    • P47888
    • P47890
    • P47893
    • P47898
    • P47900
    • P47901
    • P48145
    • P48146
    • P48546
    • P49019
    • P49146
    • P49190
    • P49238
    • P49286
    • P49683
    • P49685
    • P50052
    • P50391
    • P50406
    • P51582
    • P51677
    • P51684
    • P51686
    • P55085
    • P58170
    • P58173
    • P58180
    • P58181
    • P58182
    • P59533
    • P59534
    • P59540
    • P59541
    • P59542
    • P59543
    • P59922
    • P60893
    • P61073
    • Q5JQS5
    • Q5JRS4
    • Q5NUL3
    • Q5T6X5
    • Q5T848
    • Q5TZ20
    • Q5UAW9
    • Q5VW38
    • Q6DWJ6
    • Q6IEU7
    • Q6IEV9
    • Q6IEY1
    • Q6IEZ7
    • Q6IF00
    • Q6IF42
    • Q6IF63
    • Q6IF82
    • Q6IF99
    • Q6IFG1
    • Q6IFH4
    • Q6IFN5
    • Q6NV75
    • Q6PRD1
    • Q6U736
    • Q6W5P4
    • Q7RTX0
    • Q7RTX1
    • Q7Z5H5
    • Q7Z601
    • Q7Z602
    • Q8IXE1
    • Q8IYL9
    • Q8N0Y3
    • Q8N0Y5
    • Q8N6U8
    • Q8N127
    • Q8N146
    • Q8N148
    • Q8N162
    • Q8N349
    • Q8N628
    • Q8NDV2
    • Q8NFJ5
    • Q8NFJ6
    • Q8NFN8
    • Q8NFZ6
    • Q8NG75
    • Q8NG76
    • Q8NG77
    • Q8NG78
    • Q8NG80
    • Q8NG81
    • Q8NG83
    • Q8NG84
    • Q8NG85
    • Q8NG92
    • Q8NG94
    • Q8NG95
    • Q8NG98
    • Q8NG99
    • Q8NGA0
    • Q8NGA1
    • Q8NGA2
    • Q8NGA5
    • Q8NGA6
    • Q8NGA8
    • Q8NGB2
    • Q8NGB4
    • Q8NGB6
    • Q8NGB8
    • Q8NGB9
    • Q8NGC0
    • Q8NGC1
    • Q8NGC2
    • Q8NGC3
    • Q8NGC4
    • Q8NGC5
    • Q8NGC6
    • Q8NGC7
    • Q8NGC8
    • Q8NGC9
    • Q8NGD0
    • Q8NGD2
    • Q8NGD3
    • Q8NGD4
    • Q8NGD5
    • Q8NGE0
    • Q8NGE1
    • Q8NGE2
    • Q8NGE3
    • Q8NGE5
    • Q8NGE7
    • Q8NGE8
    • Q8NGE9
    • Q8NGF0
    • Q8NGF1
    • Q8NGF3
    • Q8NGF4
    • Q8NGF6
    • Q8NGF7
    • Q8NGF8
    • Q8NGF9
    • Q8NGG0
    • Q8NGG1
    • Q8NGG2
    • Q8NGG3
    • Q8NGG4
    • Q8NGG5
    • Q8NGG6
    • Q8NGG7
    • Q8NGG8
    • Q8NGH3
    • Q8NGH5
    • Q8NGH6
    • Q8NGH7
    • Q8NGH8
    • Q8NGH9
    • Q8NGI0
    • Q8NGI1
    • Q8NGI2
    • Q8NGI3
    • Q8NGI4
    • Q8NGI6
    • Q8NGI7
    • Q8NGI8
    • Q8NGI9
    • Q8NGJ0
    • Q8NGJ1
    • Q8NGJ2
    • Q8NGJ3
    • Q8NGJ4
    • Q8NGJ5
    • Q8NGJ6
    • Q8NGJ7
    • Q8NGJ8
    • Q8NGK0
    • Q8NGK1
    • Q8NGK2
    • Q8NGK3
    • Q8NGK4
    • Q8NGK5
    • Q8NGK6
    • Q8NGK9
    • Q8NGL0
    • Q8NGL1
    • Q8NGL2
    • Q8NGL3
    • Q8NGL4
    • Q8NGL6
    • Q8NGL7
    • Q8NGL9
    • Q8NGM1
    • Q8NGM8
    • Q8NGM9
    • Q8NGN0
    • Q8NGN1
    • Q8NGN2
    • Q8NGN3
    • Q8NGN4
    • Q8NGN5
    • Q8NGN6
    • Q8NGN7
    • Q8NGN8
    • Q8NGP0
    • Q8NGP2
    • Q8NGP3
    • Q8NGP4
    • Q8NGP6
    • Q8NGP8
    • Q8NGP9
    • Q8NGQ1
    • Q8NGQ2
    • Q8NGQ3
    • Q8NGQ4
    • Q8NGQ5
    • Q8NGQ6
    • Q8NGR1
    • Q8NGR2
    • Q8NGR3
    • Q8NGR4
    • Q8NGR5
    • Q8NGR6
    • Q8NGR8
    • Q8NGR9
    • Q8NGS0
    • Q8NGS1
    • Q8NGS2
    • Q8NGS3
    • Q8NGS4
    • Q8NGS5
    • Q8NGS6
    • Q8NGS7
    • Q8NGS8
    • Q8NGS9
    • Q8NGT0
    • Q8NGT1
    • Q8NGT2
    • Q8NGT7
    • Q8NGT9
    • Q8NGU1
    • Q8NGU4
    • Q8NGU9
    • Q8NGV0
    • Q8NGV5
    • Q8NGV6
    • Q8NGV7
    • Q8NGW1
    • Q8NGW6
    • Q8NGX0
    • Q8NGX1
    • Q8NGX2
    • Q8NGX3
    • Q8NGX5
    • Q8NGX6
    • Q8NGX8
    • Q8NGX9
    • Q8NGY0
    • Q8NGY1
    • Q8NGY2
    • Q8NGY3
    • Q8NGY5
    • Q8NGY6
    • Q8NGY7
    • Q8NGY9
    • Q8NGZ0
    • Q8NGZ2
    • Q8NGZ3
    • Q8NGZ4
    • Q8NGZ5
    • Q8NGZ6
    • Q8NGZ9
    • Q8NH00
    • Q8NH01
    • Q8NH02
    • Q8NH03
    • Q8NH04
    • Q8NH05
    • Q8NH06
    • Q8NH07
    • Q8NH09
    • Q8NH10
    • Q8NH16
    • Q8NH18
    • Q8NH19
    • Q8NH21
    • Q8NH37
    • Q8NH40
    • Q8NH41
    • Q8NH42
    • Q8NH43
    • Q8NH48
    • Q8NH49
    • Q8NH50
    • Q8NH51
    • Q8NH53
    • Q8NH54
    • Q8NH55
    • Q8NH56
    • Q8NH57
    • Q8NH59
    • Q8NH60
    • Q8NH61
    • Q8NH63
    • Q8NH64
    • Q8NH69
    • Q8NH70
    • Q8NH72
    • Q8NH73
    • Q8NH74
    • Q8NH76
    • Q8NH79
    • Q8NH80
    • Q8NH81
    • Q8NH83
    • Q8NH85
    • Q8NH87
    • Q8NH90
    • Q8NH92
    • Q8NH93
    • Q8NH94
    • Q8NH95
    • Q8NHA4
    • Q8NHA6
    • Q8NHA8
    • Q8NHB1
    • Q8NHB7
    • Q8NHB8
    • Q8NHC4
    • Q8NHC5
    • Q8NHC6
    • Q8NHC7
    • Q8NHC8
    • Q8TCB6
    • Q8TCW9
    • Q8TDS4
    • Q8TDS5
    • Q8TDS7
    • Q8TDT2
    • Q8TDU9
    • Q8TDV2
    • Q8TDV5
    • Q8TE23
    • Q8WZ84
    • Q8WZ92
    • Q8WZ94
    • Q8WZA6
    • Q9BXA5
    • Q9BXC0
    • Q9BXC1
    • Q9BXE9
    • Q9BY21
    • Q9BZJ6
    • Q9BZJ7
    • Q9BZJ8
    • Q9GZK3
    • Q9GZK4
    • Q9GZK6
    • Q9GZK7
    • Q9GZM6
    • Q9GZN0
    • Q9GZP7
    • Q9GZQ6
    • Q9H1C0
    • Q9H1Y3
    • Q9H2C5
    • Q9H2C8
    • Q9H3N8
    • Q9H205
    • Q9H207
    • Q9H208
    • Q9H209
    • Q9H210
    • Q9H228
    • Q9H255
    • Q9H339
    • Q9H340
    • Q9H341
    • Q9H342
    • Q9H343
    • Q9H346
    • Q9H461
    • Q9HB89
    • Q9HBW0
    • Q9HBX8
    • Q9HBX9
    • Q9HC97
    • Q9HCU4
    • Q9NPB9
    • Q9NPC1
    • Q9NPG1
    • Q9NQ84
    • Q9NQN1
    • Q9NS66
    • Q9NS67
    • Q9NSD7
    • Q9NWF4
    • Q9NYM4
    • Q9NYQ6
    • Q9NYQ7
    • Q9NYV7
    • Q9NYV8
    • Q9NYW0
    • Q9NYW1
    • Q9NYW2
    • Q9NYW3
    • Q9NYW5
    • Q9NYW6
    • Q9NYW7
    • Q9NZD1
    • Q9NZH0
    • Q9NZP0
    • Q9NZP2
    • Q9NZP5
    • Q9P1P5
    • Q9P1Q5
    • Q9P296
    • Q9UBS5
    • Q9UBY5
    • Q9UGF5
    • Q9UGF6
    • Q9UGF7
    • Q9UHM6
    • Q9UKL2
    • Q9UKP6
    • Q9ULV1
    • Q9ULW2
    • Q9UNW8
    • Q9UP38
    • Q9UPC5
    • Q9Y2T5
    • Q9Y2T6
    • Q9Y3N9
    • Q9Y4A9
    • Q9Y5N1
    • Q9Y5P0
    • Q9Y5P1
    • Q9Y5X5
    • Q9Y5Y3
    • Q9Y5Y4
    • Q9Y585
    • Q49SQ1
    • Q86SM5
    • Q86SM8
    • Q86VZ1
    • Q96CH1
    • Q96KK4
    • Q96LA9
    • Q96LB0
    • Q96LB1
    • Q96LB2
    • Q96P65
    • Q96P66
    • Q96P67
    • Q96P68
    • Q96P69
    • Q96P88
    • Q96R08
    • Q96R09
    • Q96R27
    • Q96R28
    • Q96R45
    • Q96R47
    • Q96R48
    • Q96R54
    • Q96R67
    • Q96R69
    • Q96R72
    • Q96R84
    • Q96RA2
    • Q96RB7
    • Q96RC9
    • Q96RD0
    • Q96RD1
    • Q96RD2
    • Q96RD3
    • Q96RI0
    • Q96RI9
    • Q96RJ0
    • Q969F8
    • Q969V1
    • Q01718
    • Q01726
    • Q02643
    • Q03431
    • Q13255
    • Q13258
    • Q13304
    • Q13324
    • Q13467
    • Q13585
    • Q13606
    • Q13607
    • Q14330
    • Q14332
    • Q14416
    • Q14439
    • Q14831
    • Q14832
    • Q14833
    • Q15077
    • Q15612
    • Q15617
    • Q15619
    • Q15620
    • Q15622
    • Q15722
    • Q15760
    • Q15761
    • Q16538
    • Q16570
    • Q16581
    • Q16602
    • Q92847
    • Q99463
    • Q99500
    • Q99527
    • Q99677
    • Q99678
    • Q99680
    • Q99705
    • Q99788
    • Q99835

  • IG
    • A6NI73
    • O14931
    • O14931
    • O75015
    • O75019
    • O75022
    • O75023
    • O75054
    • O76036
    • O95185
    • O95256
    • O95944
    • O95976
    • P01589
    • P01833
    • P06126
    • P08637
    • P08887
    • P10912
    • P12314
    • P12318
    • P12319
    • P14778
    • P14784
    • P15151
    • P15260
    • P15509
    • P15812
    • P15813
    • P16471
    • P16871
    • P17181
    • P19235
    • P24394
    • P26951
    • P26992
    • P27930
    • P29016
    • P29017
    • P31785
    • P31994
    • P31995
    • P32927
    • P32942
    • P38484
    • P40189
    • P40238
    • P42701
    • P42702
    • P43146
    • P43626
    • P43627
    • P43628
    • P43629
    • P43630
    • P43631
    • P43632
    • P48357
    • P48551
    • P55899
    • P59901
    • P78310
    • P78552
    • Q2VWP7
    • Q4KMG0
    • Q5DX21
    • Q5T2D2
    • Q5VWK5
    • Q6DN72
    • Q6IA17
    • Q6PI73
    • Q6Q8B3
    • Q6UXG3
    • Q6UXL0
    • Q6UXZ4
    • Q6ZN44
    • Q8IU57
    • Q8IVU1
    • Q8IZJ1
    • Q8N6C5
    • Q8N6P7
    • Q8N109
    • Q8N149
    • Q8N423
    • Q8N743
    • Q8NHK3
    • Q8NHL6
    • Q8NI17
    • Q8TD46
    • Q8TDQ1
    • Q8TDY8
    • Q8WWV6
    • Q9BWV1
    • Q9HB29
    • Q9HBE5
    • Q9HCK4
    • Q9NP60
    • Q9NP99
    • Q9NPH3
    • Q9NSI5
    • Q9NZC2
    • Q9NZN1
    • Q9UGN4
    • Q9UHF4
    • Q9Y6N7
    • Q96LA5
    • Q96LA6
    • Q96MS0
    • Q96P31
    • Q496F6
    • Q969P0
    • Q01113
    • Q01344
    • Q01638
    • Q08334
    • Q08708
    • Q13261
    • Q13478
    • Q13651
    • Q14626
    • Q14627
    • Q14943
    • Q14952
    • Q14953
    • Q14954
    • Q15109
    • Q15762
    • Q92637
    • Q92859
    • Q93033
    • Q99062
    • Q99650
    • Q99665
    • Q99706
    • Q99795

  • Kinase
    • O15146
    • O15197
    • P00533
    • P04626
    • P04629
    • P06213
    • P07333
    • P07949
    • P08069
    • P08581
    • P08922
    • P09619
    • P10721
    • P11362
    • P14616
    • P16066
    • P16234
    • P17342
    • P17948
    • P20594
    • P21709
    • P21802
    • P21860
    • P22455
    • P22607
    • P25092
    • P27037
    • P29317
    • P29320
    • P29322
    • P29323
    • P29376
    • P30530
    • P34925
    • P35590
    • P35916
    • P35968
    • P36888
    • P36894
    • P36896
    • P36897
    • P37023
    • P37173
    • P54753
    • P54756
    • P54760
    • P54762
    • P54764
    • Q5JZY3
    • Q8NER5
    • Q9UF33
    • Q01973
    • Q01974
    • Q02763
    • Q04771
    • Q04912
    • Q06418
    • Q08345
    • Q12866
    • Q13308
    • Q13705
    • Q13873
    • Q15303
    • Q15375
    • Q16288
    • Q16620
    • Q16671
    • Q16832

  • Other_receptors
    • O00206
    • O00220
    • O14522
    • O14786
    • O14836
    • O15031
    • O15455
    • O43157
    • O60462
    • O60486
    • O60602
    • O60603
    • O60895
    • O60896
    • O75051
    • O75074
    • O75096
    • O75197
    • O75509
    • O75578
    • O75581
    • P01130
    • P01133
    • P05106
    • P05107
    • P05556
    • P06756
    • P08138
    • P08514
    • P08575
    • P08648
    • P10586
    • P11215
    • P13612
    • P14151
    • P16109
    • P16144
    • P16581
    • P17301
    • P18084
    • P18433
    • P18564
    • P19438
    • P20333
    • P20701
    • P20702
    • P23229
    • P23467
    • P23468
    • P23470
    • P23471
    • P25445
    • P25942
    • P26006
    • P26010
    • P26012
    • P28827
    • P28908
    • P34741
    • P36941
    • P38570
    • P43489
    • P46531
    • P51805
    • P53708
    • P56199
    • P58400
    • P58401
    • P78357
    • P98155
    • P98164
    • Q5VYJ5
    • Q7Z4F1
    • Q8NAC3
    • Q8NFM7
    • Q8NFR9
    • Q8WY21
    • Q8WYK1
    • Q9BXR5
    • Q9BZ76
    • Q9C0A0
    • Q9HAV5
    • Q9HCM2
    • Q9HD43
    • Q9HDB5
    • Q9NR96
    • Q9NR97
    • Q9NRM6
    • Q9NS68
    • Q9NYK1
    • Q9NZR2
    • Q9P2S2
    • Q9UBN6
    • Q9UHC6
    • Q9UIW2
    • Q9UKX5
    • Q9ULB1
    • Q9ULL4
    • Q9UM47
    • Q9UMZ3
    • Q9UNE0
    • Q9UPU3
    • Q9Y2C9
    • Q9Y4C0
    • Q9Y4D7
    • Q9Y5U5
    • Q9Y6Q6
    • Q9Y561
    • Q86VZ4
    • Q96F46
    • Q96NU0
    • Q96PQ0
    • Q969Z4
    • Q02223
    • Q04721
    • Q07011
    • Q07954
    • Q12913
    • Q13332
    • Q13349
    • Q13635
    • Q13683
    • Q13797
    • Q14114
    • Q15256
    • Q15262
    • Q15399
    • Q16827
    • Q16849
    • Q92673
    • Q92729
    • Q92932
    • Q92956
    • Q93038
    • Q99466
    • Q99467
    • Q99523

  • SCAR
    • A6BM72
    • O60449
    • P07306
    • P07307
    • P13473
    • P16671
    • P21757
    • P22897
    • P26715
    • P26717
    • P26718
    • P78380
    • P98153
    • Q2HXU8
    • Q5QGZ9
    • Q5VY43
    • Q6UX15
    • Q6UXB4
    • Q6UXN8
    • Q6ZS10
    • Q8IX05
    • Q8NC01
    • Q8WTV0
    • Q8WWQ8
    • Q9BXN2
    • Q9H2X3
    • Q9HCU0
    • Q9NY25
    • Q9NZS2
    • Q9P126
    • Q9UBG0
    • Q9UHP7
    • Q9UQV4
    • Q96E93
    • Q96GP6
    • Q96KG7
    • Q07108
    • Q07444
    • Q12918
    • Q13018
    • Q14162

  • Receptors

On this page

  • General information
  • AlphaFold model
  • Surface representation - binding sites
  • All detected seeds aligned
  • Seed scores per sites
  • Binding site metrics
  • Binding site sequence composition
  • Download
  1. IG
  2. P01833

P01833

Author

Hamed Khakzad

Published

August 10, 2024

General information

Code
import requests
import urllib3
urllib3.disable_warnings()

def fetch_uniprot_data(uniprot_id):
    url = f"https://rest.uniprot.org/uniprotkb/{uniprot_id}.json"
    response = requests.get(url, verify=False)  # Disable SSL verification
    response.raise_for_status()  # Raise an error for bad status codes
    return response.json()

def display_uniprot_data(data):
    primary_accession = data.get('primaryAccession', 'N/A')
    protein_name = data.get('proteinDescription', {}).get('recommendedName', {}).get('fullName', {}).get('value', 'N/A')
    gene_name = data.get('gene', [{'geneName': {'value': 'N/A'}}])[0]['geneName']['value']
    organism = data.get('organism', {}).get('scientificName', 'N/A')
    
    function_comment = next((comment for comment in data.get('comments', []) if comment['commentType'] == "FUNCTION"), None)
    function = function_comment['texts'][0]['value'] if function_comment else 'N/A'

    # Printing the data
    print(f"UniProt ID: {primary_accession}")
    print(f"Protein Name: {protein_name}")
    print(f"Organism: {organism}")
    print(f"Function: {function}")

# Replace this with the UniProt ID you want to fetch
uniprot_id = "P01833"
data = fetch_uniprot_data(uniprot_id)
display_uniprot_data(data)
UniProt ID: P01833
Protein Name: Polymeric immunoglobulin receptor
Organism: Homo sapiens
Function: Mediates selective transcytosis of polymeric IgA and IgM across mucosal epithelial cells. Binds polymeric IgA and IgM at the basolateral surface of epithelial cells. The complex is then transported across the cell to be secreted at the apical surface. During this process, a cleavage occurs that separates the extracellular (known as the secretory component) from the transmembrane segment

More information:   

AlphaFold model

Surface representation - binding sites

The computed point cloud for pLDDT > 0.6. Each atom is sampled on average by 10 points.

To see the predicted binding interfaces, you can choose color theme “uncertainty”.

  • Go to the “Controls Panel”

  • Below “Components”, to the right, click on “…”

  • “Set Coloring” by “Atom Property”, and “Uncertainty/Disorder”

All detected seeds aligned

Seed scores per sites

Code
import re
import pandas as pd
import os
import plotly.express as px

ID = "P01833"
data_list = []

name_pattern = re.compile(r'name: (\S+)')
score_pattern = re.compile(r'score: (\d+\.\d+)')
desc_dist_score_pattern = re.compile(r'desc_dist_score: (\d+\.\d+)')

directory = f"/Users/hamedkhakzad/Research_EPFL/1_postdoc_project/Surfaceome_web_app/www/Surfaceome_top100_per_site/{ID}_A"

for filename in os.listdir(directory):
    if filename.startswith("output_sorted_") and filename.endswith(".score"):
        filepath = os.path.join(directory, filename)
        with open(filepath, 'r') as file:
            for line in file:
                name_match = name_pattern.search(line)
                score_match = score_pattern.search(line)
                desc_dist_score_match = desc_dist_score_pattern.search(line)
                
                if name_match and score_match and desc_dist_score_match:
                    name = name_match.group(1)
                    score = float(score_match.group(1))
                    desc_dist_score = float(desc_dist_score_match.group(1))
                    
                    simple_filename = filename.replace("output_sorted_", "").replace(".score", "")
                    data_list.append({
                        'name': name[:-1],
                        'score': score,
                        'desc_dist_score': desc_dist_score,
                        'file': simple_filename
                    })

data = pd.DataFrame(data_list)

fig = px.scatter(
    data,
    x='score',
    y='desc_dist_score',
    color='file',
    title='Score vs Desc Dist Score',
    labels={'score': 'Score', 'desc_dist_score': 'Desc Dist Score'},
    hover_data={'name': True}
)

fig.update_layout(
    legend_title_text='File',
    legend=dict(
        yanchor="top",
        y=0.99,
        xanchor="left",
        x=1.05
    )
)

fig.show()

Binding site metrics

Code
import pandas as pd
pd.options.mode.chained_assignment = None
import plotly.express as px

df_total = pd.read_csv('/Users/hamedkhakzad/Research_EPFL/1_postdoc_project/Surfaceome_web_app/www/database/df_flattened.csv')
df_plot = df_total[df_total['acc_flat'] == ID]
df_plot ['Total seeds'] = df_plot.loc[:,['seedss_a','seedss_b']].sum(axis=1)
df_plot.loc[:, ["acc_flat", "main_classs", "sub_classs", "seedss_a", "seedss_b", "areass", "bsss", "hpss"]]
acc_flat main_classs sub_classs seedss_a seedss_b areass bsss hpss
4095 P01833 Receptors IG 1 1 1396.978211 370 -12.299
4096 P01833 Receptors IG 48 370 3075.732072 243 -14.500
4097 P01833 Receptors IG 638 1368 1155.215203 442 -11.800
4098 P01833 Receptors IG 232 134 908.184791 174 10.700
Code
import math
import matplotlib.pyplot as plt

features = ['seedss_a', 'seedss_b', 'areass', 'hpss']
titles = ['Alpha seeds', 'Beta seeds', 'Area', 'Hydrophobicity']
num_features = len(features)

if len(df_plot) > 8:
    num_rows = 2
    num_cols = 2
else:
    num_rows = 1
    num_cols = 4

fig, axes = plt.subplots(nrows=num_rows, ncols=num_cols, figsize=(9, num_rows * 5))

axes = axes.flatten()
positions = range(1, len(df_plot) + 1)

for i, feature in enumerate(features):
    title = titles[i]
    axes[i].bar(positions, df_plot[feature], color=['blue', 'orange', 'green', 'red', 'purple', 'brown'])
    axes[i].set_title(title, fontsize=13)
    axes[i].set_xticks(positions)
    axes[i].set_xticklabels(df_plot['bsss'], rotation=90)
    axes[i].set_xlabel("Center residues", fontsize=13)
    axes[i].set_ylabel(title, fontsize=13)

for j in range(len(features), len(axes)):
    fig.delaxes(axes[j])

plt.tight_layout()
plt.show()

Binding site sequence composition

Code
amino_acid_map = {
    'ALA': 'A', 'ARG': 'R', 'ASN': 'N', 'ASP': 'D', 'CYS': 'C',
    'GLN': 'Q', 'GLU': 'E', 'GLY': 'G', 'HIS': 'H', 'ILE': 'I',
    'LEU': 'L', 'LYS': 'K', 'MET': 'M', 'PHE': 'F', 'PRO': 'P',
    'SER': 'S', 'THR': 'T', 'TRP': 'W', 'TYR': 'Y', 'VAL': 'V'
}

from collections import Counter
from ast import literal_eval
from matplotlib.gridspec import GridSpec
import warnings
warnings.filterwarnings("ignore", message="Attempting to set identical low and high xlims")

def convert_to_single_letter(aa_list):
    if type(aa_list) == str:
        aa_list = literal_eval(aa_list)
    return [amino_acid_map[aa] for aa in aa_list]

def create_sequence_visualizations(df, max_letters_per_row=20):
    for idx, row in df.iterrows():
        bsss = row['bsss']
        AAss = row['AAss']
        single_letter_sequence = convert_to_single_letter(AAss)
        
        freq_counter = Counter(single_letter_sequence)
        total_aa = len(single_letter_sequence)
        frequencies = {aa: freq / total_aa for aa, freq in freq_counter.items()}
        
        cmap = plt.get_cmap('viridis')
        norm = plt.Normalize(0, max(frequencies.values()) if frequencies else 1)
        
        n_rows = (len(single_letter_sequence) + max_letters_per_row - 1) // max_letters_per_row
        fig = plt.figure(figsize=(max_letters_per_row * 0.6, n_rows * 1.2 + 0.5))
        
        gs = GridSpec(n_rows + 1, 1, height_ratios=[1] * n_rows + [0.1], hspace=0.3)
        
        for row_idx in range(n_rows):
            start_idx = row_idx * max_letters_per_row
            end_idx = min((row_idx + 1) * max_letters_per_row, len(single_letter_sequence))
            ax = fig.add_subplot(gs[row_idx, 0])
            ax.set_xlim(0, max_letters_per_row)
            ax.set_ylim(0, 1)
            ax.axis('off')
            
            for i, aa in enumerate(single_letter_sequence[start_idx:end_idx]):
                freq = frequencies[aa]
                color = cmap(norm(freq))
                ax.text(i + 0.5, 0.5, aa, ha='center', va='center', fontsize=24, color=color, fontweight='bold')
        
        cbar_ax = fig.add_subplot(gs[-1, 0])
        sm = plt.cm.ScalarMappable(cmap=cmap, norm=norm)
        sm.set_array([])
        cbar = plt.colorbar(sm, cax=cbar_ax, orientation='horizontal')
        cbar.set_label('Frequency', fontsize=12)
        cbar.ax.tick_params(labelsize=12)
        
        plt.suptitle(f"Center residue {bsss}", fontsize=14)
        plt.subplots_adjust(left=0.1, right=0.9, top=0.9, bottom=0.1)
        plt.show()
            
create_sequence_visualizations(df_plot)

Download

To download all the seeds and score files for this entry Click Here!

P01589
P06126