Skip to main content

label_propagation_weighted

Function label_propagation_weighted 

Source
pub fn label_propagation_weighted(
    graph: &Graph,
    weights: &[f64],
) -> IgraphResult<LpaResult>
Expand description

Run label propagation with per-edge weights (default variant, no initial labels, no fixed vertices, seed 0).

§Errors

§Examples

use rust_igraph::{Graph, label_propagation_weighted};

let mut g = Graph::with_vertices(6);
for &(u, v) in &[(0, 1), (0, 2), (1, 2), (3, 4), (3, 5), (4, 5), (2, 3)] {
    g.add_edge(u, v).unwrap();
}
let weights = vec![10.0, 10.0, 10.0, 10.0, 10.0, 10.0, 0.01];
let r = label_propagation_weighted(&g, &weights).unwrap();
assert_eq!(r.membership[0], r.membership[1]);
assert_ne!(r.membership[0], r.membership[3]);