`scikit-network`

is an open-source python package for the analysis of large graphs.

Each graph is represented by a sparse matrix in `scipy`

format (CSR).

# Installation

To install `scikit-network`

, run this command in your terminal:

```
$ pip install scikit-network
```

If you don’t have pip installed, this Python installation guide can guide you through the process.

Alternately, you can download the sources from the Github repo and run:

```
$ cd <scikit-network folder>
$ python setup.py develop
```

# Import

Import `scikit-network`

in Python:

```
import sknetwork as skn
```

# Graph loading

A graph is represented by its adjacency matrix (square matrix). When the graph is bipartite, it can be represented by its biadjacency matrix (rectangular matrix).

Check our tutorial for various ways of loading a graph (from a list of edges, a dataframe or a CSV file, for instance).

# Graph analysis

Each algorithm is represented as an object with a `fit`

method.

Here is an example to cluster the Karate club graph with the Louvain algorithm:

```
from sknetwork.data import karate_club
from sknetwork.clustering import Louvain
adjacency = karate_club()
algo = Louvain()
algo.fit(adjacency)
labels = algo.labels_
```