barahona-research-group / PyGenStability

PyGenStability: Multiscale community detection with generalized Markov Stability
https://barahona-research-group.github.io/PyGenStability/
GNU General Public License v3.0
32 stars 11 forks source link

Feat: data clustering workflow #94

Closed d-schindler closed 5 months ago

d-schindler commented 6 months ago

I've implemented a DataClustering class that constructs a graph from data and then applies PyGenStability. The implementation follows sklearn conventions. An example with synthetic data sampled from two multiscale circles is provided.

Proper docstrings are missing because I wanted to wait for your first review @arnaudon and looking forward to your feedback.

d-schindler commented 6 months ago

Later we will also have to update the readme and documentation, and the tests.

d-schindler commented 6 months ago

I'm working on the revised code and will commit later. I use black for formatting, which style is required to pass the tests?

arnaudon commented 6 months ago

you need tox -e format, and tox -e lint (first improves formation), second gives you errors it could not fix, it has black inside and a bit more, you'll see

d-schindler commented 6 months ago

I addressed all your requests and will look into tox later. Will we also have to write tests for this part of the software?

arnaudon commented 6 months ago

I addressed all your requests and will look into tox later. Will we also have to write tests for this part of the software?

No worries, I can run tox when I'll try the code. For the tests, we could write some to improve coverage, yes. What is your plan? You are ok to use this branch, or you prefer to merge it asap to share it more easily? We can polish it a bit more, merge, and re-open PR if there is something to fix later

d-schindler commented 6 months ago

I think we can work a bit longer on this branch and polish it, write tests, update documentation etc. No need to merge ASAP.

d-schindler commented 6 months ago

I've added plot_sankey as a method and started to update the readme. Will work on improving the documentation later.

@arnaudon , could you help with the test?

d-schindler commented 6 months ago

Open tasks are now improving the docstrings and documentation, and writing tests. Once this is done we could merge this branch and assign a new version number and release updated online documentation?

d-schindler commented 5 months ago

The documentation is ready. Only the tests are left now.

d-schindler commented 5 months ago

I accidentally changed the formatting of pygenstability.py when I improved a small bit of the docstring