Cartographie avec igraph sous R (Partie 2)

3,802 views
3,722 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,802
On SlideShare
0
From Embeds
0
Number of Embeds
2,000
Actions
Shares
0
Downloads
26
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Cartographie avec igraph sous R (Partie 2)

  1. 1. Utilisation d’igraphPopularité, modularité et communautéPascal Eusebio – PSAR AT - Mars 2012
  2. 2. PlanProblématique et définitionThéorie des graphes: package igraph 1. Partitionnement de graphe : ex. les communautés 2. Analyse des réseaux : ex. la popularité Avril 2012
  3. 3. Les flux domicile-travail, un graphe à analyser. Avril 2012
  4. 4. ProblématiqueA partir d’une matrice de flux, quelles sont les relationspréférentielles?Qui est pôle d’échange ?Pour y répondre, nous utiliserons la théorie des graphesavec la librairie igraph. Avril 2012
  5. 5. Définition: modularitéC’est: la somme des flux internes d’une communauté - la somme des flux reliant les mêmes communes dans un graph plein. Le poids de chaque flux est repondéré pour conserver le degré des nœuds. Avril 2012
  6. 6. Définition: La modularitéLa modularité est une mesure pour la qualité dunpartitionnement des nœuds dun graph, en communautés.L’objectif des partitionnements est de maximiser (souscontrainte ou non) la modularité. Avril 2012
  7. 7. Le partitionnement de grapheL’approche divisive, on part d’une communauté, lesdivisions successives doivent améliorer la modularité. Avril 2012
  8. 8. Le partitionnement de grapheModule de igraph: leading.eigenvector.communityCode:library(igraph)library(foreign)base = "C:/Flux_dt_au.dbf"base_flux=read.dbf(base,as.is=T)g=graph.adjacency(matriceflux,mode="undirected",diag=F, weighted=T,add.rownames="name")lec <- leading.eigenvector.community(g)communautes <- data.frame(V(g)$name, lec$membership)modularite<- modularity(g, lec$membership) Avril 2012
  9. 9. Le partitionnement de grapheA l’inverse, l’approche gloutonne fusionne de manièrerécursive des communautés atomiques à la première étape. Avril 2012
  10. 10. Le partitionnement de grapheModule de igraph: fastgreedy.communityCode:g=graph.adjacency(matriceflux,mode="undirected",diag=F,weighted=T)fgc<-fastgreedy.community(g,merges=T,modularity=T,weights=E(g)$weight)communautes<-community.to.membership(g,fgc$merges, steps=20)modularite<-modularity(g, communautes$membership) Avril 2012
  11. 11. Analyse des réseaux: la popularitéQuel indicateur permet de définir le territoire moteur deséchanges d’une zone ?La réponse facebook est : « Le plus populaire est celui qui a desamis populaires ».Il existe plusieurs méthodes fondées sur l’étude du premier vecteurpropre de la matrice de flux dont le page rank.g=graph.adjacency(matriceflux,mode="directed",weighted=T,diag=F,add.rownames="name")pr<-data.frame(V(g)$name,page.rank(g)$vector) Avril 2012

×