volkamerlab / kissim Goto Github PK
View Code? Open in Web Editor NEWSubpocket-based fingerprint for kinase pocket comparison
Home Page: https://kissim.readthedocs.io
License: MIT License
Subpocket-based fingerprint for kinase pocket comparison
Home Page: https://kissim.readthedocs.io
License: MIT License
Add text (i.e. angle) to CA atoms using Not needed any more, since we are color-coding residues by categories (e.g. based on angles).add_label
.
Change default for
Fingerprint.values_array(True, False. True)
to
Fingerprint.values_array(True, True, True)
Hi. I'm hyunseung kong.
https://kissim.readthedocs.io/en/latest/tutorials/api.html#Run-encode-function
Here I found what appears to be a typo in the example code.
I think,
"../../kissim/tests/data/KLIFS_download/"
needs to be change
"kissim/tests/data/KLIFS_download/"
This is a minor, but I'm informing you.
Use interrogate
to check docstring coverage; improve where needed.
https://calmcode.io/shorts/interrogate.py.html
Add interrogate
badge to README :)
https://interrogate.readthedocs.io/en/latest/#other-usage
Currently e.g. empty fingerprints when structure contains modified residues (must throw an error somewhere). Catch these errors appropriately.
Thought this was fixed already - revise code!
Bump up env/CI to Python 3.8, 3.9, and 3.10.
Triggered by new pandas
release 2.0.0, which is only available for Python >= 3.8, see https://pandas.pydata.org/docs/getting_started/install.html#python-version-support
cookiecutter-cms
template
pandas
API to 2.0.0: https://pandas.pydata.org/docs/dev/whatsnew/v2.0.0.html
pd.append
to pd.concat
Use only a subset of residues in the kissim
fingerprint in the comparison step.
For instance, the subset could contain ligand-interacting residues only:
List provided by @AJK-dev:
DFG-in structures
1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,17,19,20,21,24,25,27,28,36,37,38,43,44,45,46,47,48,49,50,51,52,54,55,59,70,72,74,75,76,77,80,81,82,83,84,85
DFG-out structures
3,4,5,6,7,8,9,11,12,13,15,16,17,19,20,21,23,24,25,27,28,31,35,36,37,38,43,44,45,46,47,48,49,50,51,52,54,55,60,61,64,66,67,68,69,70,74,75,77,79,80,81,82,83,84,85
Min 1% in any DFG profile
1,2,3,4,5,6,7,8,9,10,11,12,13,15,16,17,19,20,21,23,24,25,27,28,31,35,36,37,38,41,43,44,45,46,47,48,49,50,51,52,53,54,55,56,59,60,61,64,66,67,68,69,70,72,74,75,76,77,79,80,81,82,83,84,85
Available:
FingerprintDistanceGenerator.from_feature_distances_generator()
FingerprintDistanceGenerator.from_structure_klifs_ids()
Add
FingerprintDistanceGenerator.from_fingerprint_generator()
Although this data is not used any more, update file (according to corrections in side chain angle calculation).
Ignore unit tests in CodeCov.
Currently, we generate fingerprints from structure KLIFS IDs.
Add API to generate fingerprint from a PDB ID + indices for 85 binding site residues.
kissim.io.data.KlifsToKissimData
to KissimData
with the following methods
KissimData.from_structure_klifs_id(structure_klifs_id, klifs_session)
KissimData.from_pdb(pdb_id_or_file, chain_id, alternate_model_id, residue_ids, residue_ixs, kinase_name)
kissim.io.biopython.PocketBioPython
and kissim.io.dataframe.DataFrame
KissimData
attribute structure_klifs_id
> structure_id
Fingerprint.from_pdb
FingerprintGenerator.from_pdb
kissim.encoding.features.BaseFeature.from_pdb
In order to save some resources, schedule automatic GHA CI for Tuesdays (not daily).
cron: "0 0 * * *"
> cron: "0 0 * * TUE"
See this issue: volkamerlab/opencadd#126
Update docs here: https://kissim.readthedocs.io/en/latest/installing.html
I think my ipywidgets
pinning (see #113) has no effect (due to package order in env file) - revise this and understand why the kissim
tests are not failing.
See issue here: volkamerlab/cicag_klifs_workshop#2
Change default value for feature_weights
in FingerprintDistanceGenerator.from_feature_distances_generator()
to our defaults (TBD).
Remove structures with reference point outliers (front pocket, DFG). These are other structures than those removed in postprocessing (distances >35) - those had no actual pocket any more.
Add the default (1) kinase matrix, (2) kinome tree and (3) tree-related kinase annotation as output files to the compare API/CLI.
Add unit tests for the cli
module!
I have not figured out yet how to test the CLI functions properly with pytest
.
Existing tests caused problems with codecov
and I do not understand why, so I am not trusting them for now, see PR #33.
CI fails for windows, however it seems to be a connection problem (bravado / KLIFS). Remove windows for now.
Broken notebooks using ipywidget -> nglview (AttributeError
)
Same issue as in volkamerlab/teachopencadd#262 and volkamerlab/kissim_app#60:
nglview
to pin the ipywidget
versionteachopencadd
: nglviewer/nglview#1033 (comment)nglview
release with their updateFix diagonal values for
fingerprint_distance_generator.kinase_distance_matrix()
Do not set to 0.0!
kissim/kissim/comparison/fingerprint_distance_generator.py
Lines 453 to 454 in 451afed
Add cutoffs to definitions.py
:
kissim/kissim/encoding/features/exposure.py
Lines 229 to 262 in 451afed
Generating some fingerprints fails because of an error (maybe a bug?) in Bio.PDB.HSExposure
as reported here:
biopython/biopython#3469
For now, remove these structures from fingerprints generation (check how many structures are affected).
With latest matplotlib
version 3.4, the tick labels for the cmap colorbar for categorial features are mixed up:
matplotlib
to <3.5; #101/Users/dominique/Documents/github/kissim/kissim/viewer/base.py:451: UserWarning: FixedFormatter should only be used together with FixedLocator ax.set_xticklabels(xticklabels)
Currently, standalone calculation (from scratch). Check dtypes
in pandas.DataFrame
(centroid distances float64
, other distances object
)
kissim/kissim/encoding/features/sco.py
Lines 189 to 201 in 7290602
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.