igraph : Sectionner un graph selon une valeur pour récupérer les noeuds

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Luca Niang
Messages : 26
Enregistré le : 01 Avr 2012, 10:41

igraph : Sectionner un graph selon une valeur pour récupérer les noeuds

Messagepar Luca Niang » 27 Oct 2021, 15:15

Bonjour à tous,

J'explore et je débute actuellement sur le package igraph, et j'aimerais savoir s'il était possible de définir une valeur pour scinder mon graphe et récupérer mes noeuds.

Je m'explique,

Voici un exemple reproductible

Code : Tout sélectionner

#Exemple reproductible
x <- data.frame("parcelle_mere" =c(5,7,1,1,3,3,4,9,11,11), "parcelle_fille" = c(1,1,2,3,8,9,11,11,12,13), "date" = c(20070129,20070129,20100129,20100129,20100129,20100129,20150120,20150129,20151229,20151229),"cluster"=c(31,31,31,31,31,31,31,31,31,31))

#Graph de mon exemple reproductible
library(igraph)
library(dplyr)

plot(graph.data.frame(x %>% select(parcelle_mere,parcelle_fille)),layout=layout_nicely)


Image

Voici une photo de mon schema grifonné, peut être plus lisible que le graph proposé par igraph

Image

J'aimerais en fait pouvoir sectionner ce graphe pour chaque année sachant que
* Ce n'est pas un graph avec un seul noeud de base. Ainsi, les parcelles 4, 5 et 7 qui sont les "sources" doivent etre presentes dès l'origine.
* Les parcelles qui sont en fin de graph doivent elles etre présentes jusqu'à la fin
* La parcelle 3 qui subit deux changements sans jamais exister le jour de nouvel an ne doit pas figurer dans le graphe

Ma sortie désirée serait donc celle-ci :

Image

Quelqu'un aurait une idée ?
Pour les arbres plus simples avec un objet qui se transforme une seule fois en deux, je voyais à peu près comment procéder, mais dans ces cas plus complexes, je sèche.

Merci beaucoup !
Au plaisir de vous aider en retour si jamais j'arrive à progresser en R pour réussir à aider quelqu'un !

Luca

Mickael Canouil
Messages : 1315
Enregistré le : 04 Avr 2011, 08:53
Contact :

Re: igraph : Sectionner un graph selon une valeur pour récupérer les noeuds

Messagepar Mickael Canouil » 28 Oct 2021, 08:45

Bonjour,

je ne travaille pas avec les graphs, mais si je devais les manipuler je m'orienterais vers les extensions suivantes :
https://ggraph.data-imaginist.com/
https://tidygraph.data-imaginist.com/

Cordialement,
Mickaël
mickael.canouil.fr | rlille.fr

Luca Niang
Messages : 26
Enregistré le : 01 Avr 2012, 10:41

Re: igraph : Sectionner un graph selon une valeur pour récupérer les noeuds

Messagepar Luca Niang » 28 Oct 2021, 16:18

C'est bon j'ai réussi :) !
toujours avec le package igraph, les fonctions degree et delete.vertices notamment et en creant des infos sur mes sommets à partir de mes liens


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité