From e865e0b959a91b72d4d9193110ee44e24e1929be Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 16 May 2019 14:35:59 +0200 Subject: [PATCH] gnu: Add python-leidenalg. * gnu/packages/graph.scm (python-leidenalg): New variable. --- gnu/packages/graph.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 738ba6c455..36d0467175 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -415,3 +415,34 @@ (define-public python-faiss (description "Faiss is a library for efficient similarity search and clustering of dense vectors. This package provides Python bindings to the Faiss library."))) + +(define-public python-leidenalg + (package + (name "python-leidenalg") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "leidenalg" version)) + (sha256 + (base32 + "15fwld9hdw357rd026mzcwpah5liy4f33vc9x9kwy37g71b2rjf1")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; tests are not included + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("igraph" ,igraph))) + (propagated-inputs + `(("python-igraph" ,python-igraph))) + (home-page "https://github.com/vtraag/leidenalg") + (synopsis "Community detection in large networks") + (description + "Leiden is a general algorithm for methods of community detection in +large networks. This package implements the Leiden algorithm in C++ and +exposes it to Python. Besides the relative flexibility of the implementation, +it also scales well, and can be run on graphs of millions of nodes (as long as +they can fit in memory). The core function is @code{find_partition} which +finds the optimal partition using the Leiden algorithm, which is an extension +of the Louvain algorithm, for a number of different methods.") + (license license:gpl3+)))