Releases: pnnl/HyperNetX
HNX v2.1.0
Improvements, Enhancements
- Refactor hypergraph_modularity; add tutorial; thank you @ftheberge
- Add conductance, tests; thank you @NicolBuratti @uninicol
Full Changelog: v2.0.5...v2.1.0
Modularity module updates
Unchanged functions:
- dict2part(D)
- part2dict(A)
- linear(d, c)
- majority(d, c)
- strict(d, c)
- two_section(HG)
- kumar(HG, delta=0.01, verbose=False)
No longer required
- precompute_attributes(H)
- _compute_partition_probas(HG, A)
- _degree_tax(HG, Pr, wdc)
- _edge_contribution(HG, A, wdc)
- _delta_ec(HG, P, v, a, b, wdc)
- _bin_ppmf(d, c, p)
- _delta_dt(HG, P, v, a, b, wdc)
New version
- modularity(HG, A, wdc=linear)
- last_step(HG, L, wdc=linear, delta=0.01, verbose=False)
New (hidden) functions
- _last_step_unweighted
- _last_step_weighted
HNX v2.0.5
Fixes
- Updates docstrings and documentation examples for
Hypergraph.collapse_nodes
andHypergraph.collapse_nodes_and_edges
methods - Enables deprecation warnings for Hypergraph class to be displayed on REPL, Jupyter Notebooks
Full Changelog: v2.0.4...v2.0.5
HNX v2.0.4
Fixes
- Fixes errors in Jupyter where H.dataframe and H.dual().dataframe had common references.
Full Changelog: v2.0.3...v2.0.4
HNX v2.0.3
HNX v2.0.2
HNX v2.0.1
Fixes
- Fix search capability in documentation
- Update and reorganize tutorials
- Update centrality tutorial
- Cleanup Makefile; fix and update README and tutorial 1
Full Changelog: v2.0.0...v2.0.1
HNX v2.0.0
New Features in Version 2.0
HNX 2.0 now accepts metadata as core attributes of the edges and nodes of a
hypergraph. While the library continues to accept lists, dictionaries and
dataframes as basic inputs for hypergraph constructions, both cell
properties and edge and node properties can now be easily added for
retrieval as object attributes.
The core library has been rebuilt to take advantage of the flexibility and speed of Pandas Dataframes.
Dataframes offer the ability to store and easily access hypergraph metadata. Metadata can be used for filtering objects, and characterize their
distributions by their attributes.
Version 2.0 is not backwards compatible. Objects constructed using version
1.x can be imported from their incidence dictionaries.
What's New
- The Hypergraph constructor now accepts nested dictionaries with incidence cell properties, pandas.DataFrames, and 2-column Numpy arrays.
- Additional constructors accept incidence matrices and incidence dataframes.
- Hypergraph constructors accept cell, edge, and node metadata.
- Metadata available as attributes on the cells, edges, and nodes.
- User-defined cell weights and default weights available to incidence matrix.
- Meta data persists with restrictions and removals.
- Meta data persists onto s-linegraphs as node attributes of Networkx graphs.
- New hnxwidget available using
pip install hnxwidget
.
What's Changed
- The
static
anddynamic
distinctions no longer exist. All hypergraphs use the same underlying data structure, supported by Pandas dataFrames. All hypergraphs maintain astate_dict
to avoid repeating computations. - Methods for adding nodes and hyperedges are currently not supported.
- The
nwhy
optimizations are no longer supported. - Entity and EntitySet classes are being moved to the background. The Hypergraph constructor does not accept either.
HNX v1.2.5 Hotfix
- Fixes factory method of hypergraph constructor
- Fixes ModuleNotFoundError on decorator dependency
- Adds automated test tool
- Updates tests
HNX 1.2.4 hotfix/hyp-254
Fixed bug for Hypergraph.size(). Gave incorrect value when nodeset was empty set.
HNX 1.2.3 Hotfix
fixes bug in dist_stats, which did not handle dynamic hypergraphs properly.