-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Algorithm Result object complete rewrite, Add betweeen centrality, Add Zaks Karate Club #1327
Conversation
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## master #1327 +/- ##
==========================================
+ Coverage 57.58% 58.01% +0.42%
==========================================
Files 186 188 +2
Lines 20011 20362 +351
==========================================
+ Hits 11523 11812 +289
- Misses 8488 8550 +62
☔ View full report in Codecov by Sentry. |
…nstead of vector due to potential issues with sparse vectors if the dataset is large, added missing G type for the graph, brought back results type
…ters for clones (:vomit: pyo3)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We need to go through some of these return types and extra for loops we have added as I think they are adding quite a bit of extra work. Can pair on this on monday.
raphtory/src/algorithms/community_detection/connected_components.rs
Outdated
Show resolved
Hide resolved
…thms, fixed the tests
…tom display fmt, fixed algorithm tests, fixed all rust issues
…feature/vertex-id-algo-v3
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Loolks clean AF!
Couple of small suggestions for fixes + missing docs.
When we return via get_all can we add some small tests to check that the vertex has the correct views applied to it - i.e. if I run an algorithm on a windowed graph or a layered graph - when I get the result out it should also be windowed+layered.
Need to do benchmarking as discussed.
added tests |
FYI I was looking into our layered graphs, the layered graph do a layer on an edge_filter not a vertex filter. its assumed that vertices live on all layers, but their edges can be layered. Thus when running algorithms on a specific layer, you will get a result that contains all vertexes, as they exist in all layers but may not have an edge on that layer. |
…d Zaks Karate Club (#1327) * checkpoint, need to fix tests * im so happy it works :D * remove type_name param * algorithm result tests complete, new fmt, fixed group_by, fixed all types * renamed old algorithm result, changed base result type to a hashmap instead of vector due to potential issues with sparse vectors if the dataset is large, added missing G type for the graph, brought back results type * fix bad 0 checking * macro magic but partially implemented * added the extra macros, added all missing functions, removed all pointers for clones (:vomit: pyo3) * algorithm result object + all macros is complete in both rust and python * fixed reciprocity, fixed centrality * fixed pagerank, fixed graphql new type issues * balance algorithm complete * sssp fixed * sssp forgot le lib * temporal reachability fixed * hits fixed * connected components nearly fixed, last test * removed bad test * three node motif completed, algorithm result complte * good bye bugs * removed all warnings * fix lotr bug * i think i fixed hulong * fix dusty benchmark * rename macro rules, fix doctests * implement debug for algo result * fix pytests * Zaks Karate Club Graph (#1326) * betweenness centrality for a directed graph with and without normalisation * cleanup * swapped to algorithm result, added rust docs * ported to python, added python docs, added python test * fix formatting * karate club graph, but its half working, adding 1 extra node and way too many edges * fixed issue with rows * betweeness has float calc differences but largely the same * fix test * fixes issue with python? * port betweeness centrality to new algo object and fix over python tests * Changed State to use Internal ID everywhere, fixed most of the algorithms, fixed the tests * fixed all the algos * fn name changes * added very basic hashing to allow get_all to return a vertex object * vertex view now returned by algo rest * fix python algo result for vertexview * reorder tests * implemented custom debug fmt display for vertex view, implemented custom display fmt, fixed algorithm tests, fixed all rust issues * extended richcmp for python objects, fixed all python tests * connected_components.rs passes * moved algos * resolved comments * changes due to comments * windows works, layers dont * added tests for windowed graphs * complete! * bad comments for ubuntu * bad colon
What changes were proposed in this pull request?
A complete rewrite of thr algorithm object,
may not come with memory efficiency ™
Why are the changes needed?
it was becoming very messy
Does this PR introduce any user-facing change? If yes is this documented?
yes all methods should have docs
How was this patch tested?
python and rust tests
Issues
resolves #1129
Are there any further changes required?
i hope not