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