VPSPulse Mirrors

High-Performance Open-Source Archive

README

rSpectral

The goal of ‘rSpectral’ is to make Spectral Modularity graph clustering method available to most of R graph frameworks.

Installation

You can install the development version of rSpectral from GitHub with:

# install.packages("devtools")
devtools::install_github("cmclean5/rSpectral")

The stable version is available on CRAN:

install.packages("rSpectral")

Example

This is a basic example which shows you how to solve a common problem

  1. load the karate club graph and plot Faction membership:
library(rSpectral)
library(igraph)
#> 
#> Attaching package: 'igraph'
#> The following objects are masked from 'package:stats':
#> 
#>     decompose, spectrum
#> The following object is masked from 'package:base':
#> 
#>     union
data(karate, package="igraphdata")
l<-layout_nicely(karate)
memT<-V(karate)$Faction
palette <- rainbow(max(as.numeric(memT)))
plot(karate,vertex.color=palette[memT],layout=l)

  1. run spectral clustering on graph
mem0<-igraph::membership(rSpectral::spectral_igraph_communities(karate))
  1. plot the graph with membership colors
palette <- rainbow(max(as.numeric(mem0)))
plot(karate,vertex.color=palette[mem0],layout=l)

  1. run spectral clustering on graph, fixing neighbouring nodes found in same community
mem1<-igraph::membership(
  rSpectral::spectral_igraph_communities(karate, fix_neig=1))
  1. and plot again
palette <- rainbow(max(as.numeric(mem1)))
plot(karate,vertex.color=palette[mem1],layout=l)

  1. run spectral clustering - fixing neighbouring nodes, Cnmin=5
mem1.5<-igraph::membership(
  rSpectral::spectral_igraph_communities(karate, fix_neig=1,Cn_min=5))
  1. and the last plot
palette <- rainbow(max(as.numeric(mem1.5)))
plot(karate,vertex.color=palette[mem1.5],layout=l)

GraphNEL objects could be processed similarily, all other graph types could be converted either to igraph or to GraphNEL by packages such as Intergraph.

Need mirroring services?
Contact our team at info@vpspulse.com.

Mirror powered by VPSpulse

Infrastructure sponsored by VPSPulse & Secure Payments by ArionPay.