lbc-lnbio / pykvfinder Goto Github PK
View Code? Open in Web Editor NEWpyKVFinder: Python-C parallel KVFinder
Home Page: https://lbc-lnbio.github.io/pyKVFinder/
License: GNU General Public License v3.0
pyKVFinder: Python-C parallel KVFinder
Home Page: https://lbc-lnbio.github.io/pyKVFinder/
License: GNU General Public License v3.0
Hi
I'm trying to install with pip on MacOS HIgh Sierra (old hardware, this is the newest OS I can install) as per the instructions on https://pypi.org/project/pyKVFinder/
[MacPro:~/icl/test] harry% pip install pyKVFinder
ERROR: Could not find a version that satisfies the requirement pyKVFinder (from versions: none)
ERROR: No matching distribution found for pyKVFinder
and
[MacPro:~/icl/test] harry% python3 -m pip install pyKVFinder
ERROR: Could not find a version that satisfies the requirement pyKVFinder (from versions: none)
ERROR: No matching distribution found for pyKVFinder[MacPro:
/icl/test] harry% python3 --version/icl/test] harry% python3 -m pip --version
Python 3.9.13
[MacPro:
pip 22.3.1 from /Applications/miniconda3/lib/python3.9/site-packages/pip (python 3.9)
[MacPro:~/icl/test] harry% swig -version
SWIG Version 4.1.1
Compiled with /Applications/Xcode_13.2.1.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ [Darwin]
Configured options: +pcre
Please see https://www.swig.org for reporting bugs and further information
My assumption is that
(a) I'm doing something wrong
(b) something is missing on my system or
(c) my OS is too old :-(
any help would be appreciated!
Hello! I've found pyKVFinder to be an excellent tool for my work. Thanks for continuing to maintain it.
Is it possible to run it on only a subset of residues? Say if I want to detect any pockets formed by say residues 1,23,45,80.
I know the process returns the set of residues comprising each pocket, but I was wondering if there was a way to specify this beforehand. Thanks!
Enhance the code quality of your project by integrating Pylint into your Continuous Integration (CI) pipeline. Pylint is a powerful static code analyzer for Python that can identify and report code issues, ensuring a higher standard of code cleanliness and maintainability.
PDB entries with extended Chemical Component Dictionary (CCD) or PDB IDs will be distributed in PDBx/mmCIF format only, as announced by the wwPDB in collaboration with the PDBx/mmCIF Working Group. PDB entries containing these extended IDs will not be supported by the legacy PDB file format. (see previous announcement)
Reference: https://www.rcsb.org/news/feature/63ff72ccc031758bf1c30ff7
To ensure that pyKVFinder can continue to support PDB entries with extended CCD or PDB IDs, we propose adding support for reading mmCIF files in pyKVFinder. Specifically, we propose adding a new function that can read mmCIF files in the same format as the existing read_pdb
and read_xyz
functions.
By adding support for reading mmCIF files in pyKVFinder, we can ensure that users can continue to use pyKVFinder to analyze PDB entries with extended CCD or PDB IDs, without the need for manual conversion or preprocessing of the data.
The proposed function for reading mmCIF files will need to be developed in accordance with the PDBx/mmCIF format specifications. We will also need to update the documentation to reflect the new functionality.
Hello!
I am trying to integrate the package in a pipeline, and when running multiple times with the same file, same commands many times, sometimes I get segmentation error, while sometimes I get results:
This is the code to reproduce the error:
import pyKVFinder pyKVFinder.run_workflow('./tests/resources/1H6J_B.pdb', include_depth=True, include_hydropathy=True, hydrophobicity_scale='EisenbergWeiss').residues
And this is the error I get:
File "/home/ana/.anaconda3/envs/cavidb/lib/python3.8/site-packages/pyKVFinder/grid.py", line 1556 in constitutional
I am currently working in Ubuntu 22.04 but also occurs when using Ubuntu 20. Same bug when I am inside a conda envvironment, and also outside it.
I attach the pdb file used.
Thanks
1H6J_B.zip
How to plot the volume/area of a particular cryptic pocket(s) with respect to time? Can we see the changing pocket volume interactively on Jupyter notebook (using nglview)? Thanks.
How to get a box.toml file for a particular protein of interest surrounding the whole protein?
Include an example of a host-guest analysis for supramolecular chemists.
Supramolecular chemists that wish to use pyKVFinder to detect and characterize cavities and/or calculate a van der Waals volume of molecules.
Currently, pyKVFinder (v0.5.5) saves depth and hydropathy information into separate files to display characterizations. This approach can be inconvenient and inefficient for users who need to work with both datasets simultaneously.
We propose integrating the depth and hydropathy information into a single PDB file, where depth is represented as B-factor (temperature factor) and hydropathy as Q-factor (occupancy). This will make it easier for users to work with both sets of data simultaneously.
If this enhancement is implemented, we will need to update the documentation accordingly. Specifically, we will need to update the tutorial and API reference to reflect the changes in the new file format.
Hi,
Thanks for your nice tool!
I was wondering if there is a way to efficiently parallelize the analysis. I would like to run the analysis on 10,000 frames, but it is currently taking a lot of time.
Thanks!
Ensure future-proof compatibility for your project by expanding its support to Python versions 3.12 and 3.13. This maintenance task involves updating and modifying the codebase to ensure smooth operation on the latest Python releases, embracing new features and optimizations.
In pyKVFinder/pyKVFinder/main.py I have as an example of how to run it:
>>> import os
>>> import pyKVFinder
>>> pdb = os.path.join(os.path.dirname(pyKVFinder.__file__), 'data', 'tests', '1FMO.pdb')
>>> results = pyKVFinder.run_workflow(pdb)
>>> results..... (result.export() , results.results.cavities etc etc )
and this works fine with me; but then I have multiple instances of :
>>> from pyKVFinder import pyKVFinder
>>> import os
>>> pdb = os.path.join(os.path.dirname(pyKVFinder.__file__), 'data', 'tests', '1FMO.pdb')
>>> results = pyKVFinder(pdb)
>>> results.export()
and this fails to me with : ImportError: cannot import name 'pyKVFinder' from 'pyKVFinder'
what am I doing wrong ?
>>> from pyKVFinder import pyKVFinder
>>> import os
>>> pdb = os.path.join(os.path.dirname(pyKVFinder.__file__), 'data', 'tests', '1FMO.pdb')
>>> results = pyKVFinder(pdb)
>>> results.export()
ImportError: cannot import name 'pyKVFinder' from 'pyKVFinder'
run flawless like with:
>>> import os
>>> import pyKVFinder
>>> pdb = os.path.join(os.path.dirname(pyKVFinder.__file__), 'data', 'tests', '1FMO.pdb')
>>> results = pyKVFinder.run_workflow(pdb)
>>> results
No response
No response
No response
0.6.1
No response
No response
pip
We are working on improving the compatibility and distribution of the pyKVFinder project. To achieve this, we're planning to introduce a Windows build. This will be made possible by utilizing the powerful combination of cibuildwheel and GitHub Actions.
For more information about cibuildwheel and its capabilities, please refer to the official cibuildwheel GitHub repository.
It would be very useful to be able to return the cavities as a string in PDB format instead of immediately writing it to a file.
Thanks a lot!
This should be done by editing the _export function, since the PDB string is anyways generated, right? Or are there any other possibilities that I am missing?
I need to extract the overall dimensions and centre of each cavity so that I can give them to Autodoc Vina for docking a ligand. An easy way would be to export to "cavity.pdb", then parse the file, but this isn't very satisfying. There must be a way to do this without writing a "cavity.pdb" file then reading it back, but I haven't found anything in the documentation that tells me how to do this.
My guess is that I've missed something...
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.