Pockets

Under the hood, fingerprints are calculated based on the pocket objects PocketBioPython and PocketDataFrame.

[1]:
from kissim.io import PocketDataFrame, PocketBioPython

The PocketBioPython class

[2]:
pocket_bp = PocketBioPython.from_structure_klifs_id(3833)
pocket_bp
[2]:
<kissim.io.biopython.PocketBioPython at 0x7f29f0283610>
[3]:
pocket_bp._data_complex
[3]:
<Chain id=B>
[4]:
print(*pocket_bp._residue_ids)
50 51 52 53 54 55 56 57 58 59 60 61 62 71 72 73 74 75 76 86 87 88 89 90 91 92 93 94 95 96 97 98 101 102 103 104 105 106 107 108 109 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 192 193 194 195 196 197 198
[5]:
print(*pocket_bp._residue_ixs)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
[6]:
pocket_bp._hse_ca_complex
[6]:
<Bio.PDB.HSExposure.HSExposureCA at 0x7f298134f610>
[7]:
pocket_bp._hse_cb_complex
[7]:
<Bio.PDB.HSExposure.HSExposureCB at 0x7f2980f389a0>
[8]:
pocket_bp.center
[8]:
<Vector 1.03, 20.79, 36.40>
[9]:
pocket_bp.residues
[9]:
residue.id residue.ix
0 50 1
1 51 2
2 52 3
3 53 4
4 54 5
... ... ...
80 194 81
81 195 82
82 196 83
83 197 84
84 198 85

85 rows × 2 columns

[10]:
pocket_bp.ca_atoms
[10]:
residue.id ca.atom ca.vector
0 50 <Atom CA> <Vector 6.05, 14.97, 51.86>
1 51 <Atom CA> <Vector 6.26, 13.24, 48.48>
2 52 <Atom CA> <Vector 2.95, 13.93, 46.61>
3 53 <Atom CA> <Vector 3.49, 11.68, 43.58>
4 54 <Atom CA> <Vector 6.19, 10.09, 41.43>
... ... ... ...
80 194 <Atom CA> <Vector 1.58, 19.36, 33.55>
81 195 <Atom CA> <Vector 2.80, 21.51, 30.64>
82 196 <Atom CA> <Vector 5.78, 19.30, 30.06>
83 197 <Atom CA> <Vector 4.26, 17.85, 26.87>
84 198 <Atom CA> <Vector 2.90, 21.10, 25.47>

85 rows × 3 columns

[11]:
pocket_bp.pcb_atoms
[11]:
residue.id pcb.vector
0 50 <Vector 5.33, 14.25, 51.14>
1 51 <Vector 7.04, 14.02, 49.26>
2 52 <Vector 2.18, 13.15, 45.84>
3 53 <Vector 2.59, 10.79, 42.69>
4 54 <Vector 7.07, 10.97, 42.32>
... ... ...
80 194 <Vector 2.02, 19.79, 33.99>
81 195 <Vector 2.46, 21.17, 30.29>
82 196 <Vector 6.14, 19.66, 30.42>
83 197 <Vector 4.24, 17.82, 26.84>
84 198 <Vector 2.26, 20.47, 24.83>

85 rows × 2 columns

[12]:
pocket_bp.side_chain_representatives
[12]:
residue.id sc.atom sc.vector
0 50 <Atom CD> <Vector 2.59, 15.27, 53.70>
1 51 <Atom CB> <Vector 7.01, 11.93, 48.09>
2 52 <Atom CG> <Vector 2.54, 16.38, 47.18>
3 53 <Atom CB> <Vector 2.34, 11.94, 42.59>
4 54 None None
... ... ... ...
80 194 <Atom CG> <Vector 2.22, 17.02, 32.73>
81 195 <Atom CZ> <Vector -1.29, 23.95, 32.17>
82 196 None None
83 197 <Atom OG> <Vector 3.89, 15.56, 27.56>
84 198 <Atom CB> <Vector 2.54, 22.32, 26.31>

85 rows × 3 columns

[13]:
pocket_bp.hse_ca
[13]:
{('B', (' ', 50, ' ')): (0, 24, 0.6197137877140018),
 ('B', (' ', 51, ' ')): (13, 11, 0.4400458880435926),
 ('B', (' ', 52, ' ')): (11, 15, 0.8699943332590032),
 ('B', (' ', 53, ' ')): (6, 14, 0.5455223112896657),
 ('B', (' ', 54, ' ')): (9, 9, 0.49285595458564824),
 ('B', (' ', 55, ' ')): (5, 11, 0.2941359715310677),
 ('B', (' ', 56, ' ')): (10, 11, 0.9790254625222359),
 ('B', (' ', 57, ' ')): (3, 13, 0.9425564706303946),
 ('B', (' ', 58, ' ')): (13, 10, 0.5495378576769611),
 ('B', (' ', 59, ' ')): (8, 16, 0.40339554008573103),
 ('B', (' ', 60, ' ')): (15, 18, 0.304325298836267),
 ('B', (' ', 61, ' ')): (20, 16, 0.5931810944634327),
 ('B', (' ', 62, ' ')): (11, 25, 0.44226493769072395),
 ('B', (' ', 71, ' ')): (15, 19, 0.7362696551359399),
 ('B', (' ', 72, ' ')): (15, 22, 0.4332467393311994),
 ('B', (' ', 73, ' ')): (25, 19, 0.3568300182779931),
 ('B', (' ', 74, ' ')): (19, 25, 0.36661964271877784),
 ('B', (' ', 75, ' ')): (17, 20, 0.44340914499427436),
 ('B', (' ', 76, ' ')): (11, 19, 0.4770153998912767),
 ('B', (' ', 86, ' ')): (8, 17, 0.8859430313928824),
 ('B', (' ', 87, ' ')): (19, 16, 0.8622864738612888),
 ('B', (' ', 88, ' ')): (8, 20, 0.8405765787426461),
 ('B', (' ', 89, ' ')): (5, 16, 0.9291386190810254),
 ('B', (' ', 90, ' ')): (13, 19, 0.953716741303981),
 ('B', (' ', 91, ' ')): (13, 19, 0.8865982009746481),
 ('B', (' ', 92, ' ')): (1, 20, 0.8733328206126585),
 ('B', (' ', 93, ' ')): (14, 20, 0.8833230562020254),
 ('B', (' ', 94, ' ')): (23, 12, 0.8553298500238189),
 ('B', (' ', 95, ' ')): (7, 16, 0.925040565935056),
 ('B', (' ', 96, ' ')): (3, 19, 0.9175581487052348),
 ('B', (' ', 97, ' ')): (16, 12, 0.8448422110645292),
 ('B', (' ', 98, ' ')): (21, 8, 0.772624154156718),
 ('B', (' ', 101, ' ')): (4, 21, 0.7954110257394671),
 ('B', (' ', 102, ' ')): (22, 13, 0.5842973026856542),
 ('B', (' ', 103, ' ')): (20, 19, 0.4037158951938523),
 ('B', (' ', 104, ' ')): (22, 16, 0.4677614213481592),
 ('B', (' ', 105, ' ')): (5, 28, 0.43228971638344355),
 ('B', (' ', 106, ' ')): (18, 13, 0.5313672484796714),
 ('B', (' ', 107, ' ')): (7, 19, 0.8498111482415309),
 ('B', (' ', 108, ' ')): (7, 21, 0.8139462373124519),
 ('B', (' ', 109, ' ')): (21, 11, 0.5391981971534253),
 ('B', (' ', 123, ' ')): (18, 20, 0.4050809933719408),
 ('B', (' ', 124, ' ')): (16, 28, 0.3034744821483621),
 ('B', (' ', 125, ' ')): (19, 18, 0.3500027494916892),
 ('B', (' ', 126, ' ')): (17, 16, 0.6680016636665198),
 ('B', (' ', 127, ' ')): (14, 22, 0.5820339041156853),
 ('B', (' ', 128, ' ')): (16, 17, 0.43048524831876156),
 ('B', (' ', 129, ' ')): (20, 12, 0.4341685712129487),
 ('B', (' ', 130, ' ')): (5, 16, 0.86162520989722),
 ('B', (' ', 131, ' ')): (9, 12, 0.8388556271870947),
 ('B', (' ', 132, ' ')): (8, 21, 1.3495086799591236),
 ('B', (' ', 133, ' ')): (10, 18, 0.5257686788282299),
 ('B', (' ', 134, ' ')): (23, 16, 0.8461667873769668),
 ('B', (' ', 135, ' ')): (10, 16, 0.9102614306383141),
 ('B', (' ', 136, ' ')): (1, 17, 0.7959873771099263),
 ('B', (' ', 137, ' ')): (10, 17, 0.8545565186991031),
 ('B', (' ', 138, ' ')): (18, 11, 0.9137379136813545),
 ('B', (' ', 139, ' ')): (0, 15, 0.889553773040521),
 ('B', (' ', 140, ' ')): (0, 14, 0.8646932363765047),
 ('B', (' ', 166, ' ')): (18, 16, 0.8796823944745646),
 ('B', (' ', 167, ' ')): (10, 15, 0.5980931864451884),
 ('B', (' ', 168, ' ')): (11, 8, 0.6183457904059264),
 ('B', (' ', 169, ' ')): (1, 11, 0.8542727485434437),
 ('B', (' ', 170, ' ')): (5, 11, 0.40969310277011406),
 ('B', (' ', 171, ' ')): (12, 12, 0.533790163935913),
 ('B', (' ', 172, ' ')): (19, 16, 0.4175798249374188),
 ('B', (' ', 173, ' ')): (16, 23, 0.43916572527333025),
 ('B', (' ', 174, ' ')): (19, 27, 0.9359842774400827),
 ('B', (' ', 175, ' ')): (25, 17, 0.9931915795904408),
 ('B', (' ', 176, ' ')): (17, 23, 0.4627556650536935),
 ('B', (' ', 177, ' ')): (24, 19, 0.4882358074288238),
 ('B', (' ', 178, ' ')): (16, 23, 0.6412014624139608),
 ('B', (' ', 179, ' ')): (27, 13, 0.7931596039844055),
 ('B', (' ', 180, ' ')): (10, 18, 0.8262558129812109),
 ('B', (' ', 181, ' ')): (17, 19, 0.6297105732980736),
 ('B', (' ', 182, ' ')): (23, 16, 0.3642456482953483),
 ('B', (' ', 183, ' ')): (13, 23, 0.5005024224974677),
 ('B', (' ', 184, ' ')): (14, 20, 0.4048030262675747),
 ('B', (' ', 192, ' ')): (20, 23, 0.4904758113391317),
 ('B', (' ', 193, ' ')): (23, 22, 0.6108396455687325),
 ('B', (' ', 194, ' ')): (17, 22, 0.7986453805747944),
 ('B', (' ', 195, ' ')): (25, 14, 0.5975147225163671),
 ('B', (' ', 196, ' ')): (18, 18, 0.8441847907301477),
 ('B', (' ', 197, ' ')): (12, 20, 0.7686260238521267),
 ('B', (' ', 198, ' ')): (19, 18, 0.48068168790560734)}
[14]:
pocket_bp.hse_cb
[14]:
{('B', (' ', 50, ' ')): (7, 17, 0.0),
 ('B', (' ', 51, ' ')): (10, 14, 0.0),
 ('B', (' ', 52, ' ')): (18, 8, 0.0),
 ('B', (' ', 53, ' ')): (8, 12, 0.0),
 ('B', (' ', 54, ' ')): (3, 15, 0.0),
 ('B', (' ', 55, ' ')): (5, 11, 0.0),
 ('B', (' ', 56, ' ')): (14, 7, 0.0),
 ('B', (' ', 57, ' ')): (6, 10, 0.0),
 ('B', (' ', 58, ' ')): (16, 7, 0.0),
 ('B', (' ', 59, ' ')): (8, 16, 0.0),
 ('B', (' ', 60, ' ')): (13, 20, 0.0),
 ('B', (' ', 61, ' ')): (20, 16, 0.0),
 ('B', (' ', 62, ' ')): (10, 26, 0.0),
 ('B', (' ', 71, ' ')): (20, 14, 0.0),
 ('B', (' ', 72, ' ')): (15, 22, 0.0),
 ('B', (' ', 73, ' ')): (24, 20, 0.0),
 ('B', (' ', 74, ' ')): (19, 25, 0.0),
 ('B', (' ', 75, ' ')): (17, 20, 0.0),
 ('B', (' ', 76, ' ')): (15, 15, 0.0),
 ('B', (' ', 86, ' ')): (13, 12, 0.0),
 ('B', (' ', 87, ' ')): (20, 15, 0.0),
 ('B', (' ', 88, ' ')): (7, 21, 0.0),
 ('B', (' ', 89, ' ')): (12, 9, 0.0),
 ('B', (' ', 90, ' ')): (15, 17, 0.0),
 ('B', (' ', 91, ' ')): (15, 17, 0.0),
 ('B', (' ', 92, ' ')): (7, 14, 0.0),
 ('B', (' ', 93, ' ')): (23, 11, 0.0),
 ('B', (' ', 94, ' ')): (19, 16, 0.0),
 ('B', (' ', 95, ' ')): (8, 15, 0.0),
 ('B', (' ', 96, ' ')): (11, 11, 0.0),
 ('B', (' ', 97, ' ')): (20, 8, 0.0),
 ('B', (' ', 98, ' ')): (17, 12, 0.0),
 ('B', (' ', 101, ' ')): (6, 19, 0.0),
 ('B', (' ', 102, ' ')): (18, 17, 0.0),
 ('B', (' ', 103, ' ')): (18, 21, 0.0),
 ('B', (' ', 104, ' ')): (19, 19, 0.0),
 ('B', (' ', 105, ' ')): (8, 25, 0.0),
 ('B', (' ', 106, ' ')): (17, 14, 0.0),
 ('B', (' ', 107, ' ')): (14, 12, 0.0),
 ('B', (' ', 108, ' ')): (10, 18, 0.0),
 ('B', (' ', 109, ' ')): (17, 15, 0.0),
 ('B', (' ', 123, ' ')): (18, 20, 0.0),
 ('B', (' ', 124, ' ')): (21, 23, 0.0),
 ('B', (' ', 125, ' ')): (17, 20, 0.0),
 ('B', (' ', 126, ' ')): (19, 14, 0.0),
 ('B', (' ', 127, ' ')): (17, 19, 0.0),
 ('B', (' ', 128, ' ')): (13, 20, 0.0),
 ('B', (' ', 129, ' ')): (22, 10, 0.0),
 ('B', (' ', 130, ' ')): (3, 18, 0.0),
 ('B', (' ', 131, ' ')): (13, 8, 0.0),
 ('B', (' ', 132, ' ')): (6, 23, 0.0),
 ('B', (' ', 133, ' ')): (11, 17, 0.0),
 ('B', (' ', 134, ' ')): (23, 16, 0.0),
 ('B', (' ', 135, ' ')): (6, 20, 0.0),
 ('B', (' ', 136, ' ')): (5, 13, 0.0),
 ('B', (' ', 137, ' ')): (17, 10, 0.0),
 ('B', (' ', 138, ' ')): (15, 14, 0.0),
 ('B', (' ', 139, ' ')): (4, 11, 0.0),
 ('B', (' ', 140, ' ')): (6, 8, 0.0),
 ('B', (' ', 166, ' ')): (20, 14, 0.0),
 ('B', (' ', 167, ' ')): (14, 11, 0.0),
 ('B', (' ', 168, ' ')): (14, 5, 0.0),
 ('B', (' ', 169, ' ')): (1, 11, 0.0),
 ('B', (' ', 170, ' ')): (5, 11, 0.0),
 ('B', (' ', 171, ' ')): (10, 14, 0.0),
 ('B', (' ', 172, ' ')): (18, 17, 0.0),
 ('B', (' ', 173, ' ')): (19, 20, 0.0),
 ('B', (' ', 174, ' ')): (25, 21, 0.0),
 ('B', (' ', 175, ' ')): (19, 23, 0.0),
 ('B', (' ', 176, ' ')): (16, 24, 0.0),
 ('B', (' ', 177, ' ')): (23, 20, 0.0),
 ('B', (' ', 178, ' ')): (12, 27, 0.0),
 ('B', (' ', 179, ' ')): (20, 20, 0.0),
 ('B', (' ', 180, ' ')): (8, 20, 0.0),
 ('B', (' ', 181, ' ')): (18, 18, 0.0),
 ('B', (' ', 182, ' ')): (22, 17, 0.0),
 ('B', (' ', 183, ' ')): (16, 20, 0.0),
 ('B', (' ', 184, ' ')): (14, 20, 0.0),
 ('B', (' ', 192, ' ')): (23, 20, 0.0),
 ('B', (' ', 193, ' ')): (21, 24, 0.0),
 ('B', (' ', 194, ' ')): (18, 21, 0.0),
 ('B', (' ', 195, ' ')): (25, 14, 0.0),
 ('B', (' ', 196, ' ')): (16, 20, 0.0),
 ('B', (' ', 197, ' ')): (17, 15, 0.0),
 ('B', (' ', 198, ' ')): (18, 19, 0.0)}

The PocketDataFrame class

[15]:
pocket_df = PocketDataFrame.from_structure_klifs_id(3833)
pocket_df
[15]:
<kissim.io.dataframe.PocketDataFrame at 0x7f29812cd4f0>
[16]:
pocket_df.data.shape
[16]:
(653, 7)
[17]:
pocket_df.data["residue.id"].unique().shape[0]
[17]:
85
[18]:
print(*pocket_df._residue_ids)
50 51 52 53 54 55 56 57 58 59 60 61 62 71 72 73 74 75 76 86 87 88 89 90 91 92 93 94 95 96 97 98 101 102 103 104 105 106 107 108 109 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 192 193 194 195 196 197 198
[19]:
print(*pocket_df._residue_ixs)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
[20]:
pocket_df.center
[20]:
array([ 1.0266471, 20.789919 , 36.403976 ], dtype=float32)
[21]:
pocket_df.residues
[21]:
residue.id residue.ix
0 50 1
1 51 2
2 52 3
3 53 4
4 54 5
... ... ...
80 194 81
81 195 82
82 196 83
83 197 84
84 198 85

85 rows × 2 columns

[22]:
pocket_df.ca_atoms
[22]:
atom.id atom.name atom.x atom.y atom.z residue.id residue.name
132 133 CA 6.052 14.970000 51.859001 50 GLU
141 142 CA 6.264 13.245000 48.484001 51 VAL
148 149 CA 2.951 13.925000 46.609001 52 LEU
156 157 CA 3.487 11.680000 43.578999 53 ALA
161 162 CA 6.188 10.086000 41.433998 54 GLU
... ... ... ... ... ... ... ...
1242 1243 CA 1.581 19.357000 33.549999 194 ASP
1250 1251 CA 2.802 21.513000 30.635000 195 PHE
1261 1262 CA 5.782 19.296000 30.059999 196 GLY
1265 1266 CA 4.264 17.849001 26.867001 197 SER
1271 1272 CA 2.897 21.103001 25.471001 198 ALA

85 rows × 7 columns