igraph-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[igraph] community detection algorithms


From: Larson, TR
Subject: [igraph] community detection algorithms
Date: Wed, 28 Oct 2009 15:07:54 +0000
User-agent: Thunderbird 2.0.0.23 (Windows/20090812)

Hello,
My first post! I have been experimenting with community detection algorithms in igraph (in R) as a way to extract groups of related chemical compounds. Basically, I start with 2-column matrix of vertices several tens of thousands rows long with ~ 400 unique vertices. Each row represents a pairing that has passed some previous association tests.

I then create an undirected graph from the matrix, stored count.multiple() into the graph weight attribute, and then simplify().

I then tried several community detection algorithms to return membership (either directly or via community.to.membership(), as appropriate):

label.propagation.community
walktrap.community
fastgreedy.community

I found the best algorithm to be label.propagation (in terms of separating what I know to be different clusters of chemically different compounds from each other, but on the other hand not falsely dividing a cluster containing highly related chemicals in a test set).

Walktrap and fastgreedy give the same membership results every time I run the algorithms. However, label.propagation.community it gives slightly different groupings each time. I have tried setting initial to a set vector (either all 0 or 0:(length(V(g)$name)-1)) and fixed to a vector of all FALSE values in case the algorithm results vary because of random starting values. However, this has no effect.

Any comments would be most welcome; also any other suggestions on how to extract related clusters from my graph structure.

thanks
Tony






reply via email to

[Prev in Thread] Current Thread [Next in Thread]