Si data <- data.frame(a=c(1,1,2),b=c(2,4,1))
.Si trame de données avec chaque ligne représente une branche de l'arborescence fp. Comment le représenter sous la forme schématique enter image description here.Comment tracer l'arborescence FP à l'aide du package data.tree dans R
Répondre
Solution trouvée à l'aide de la bibliothèque data.tree. Pris le temps de trouver une solution. Lors de l'analyse de la première ligne 1,2, une branche est créée. Lorsque la deuxième ligne est analysée et lors de la création de la branche, elle remplace la branche précédente et ne conserve que la branche 1,4. Vous avez surmonté ce problème en vérifiant si le noeud a déjà un enfant avec le nom donné sinon créez-en un autre en vous référant au noeud existant. Voici le code. `
rootNode <- Node$new("Root")
for(i in 1:nrow(data)){
tmp<-rootNode
for(j in 1:ncol(data)){
if(is.null(Navigate(tmp, c(as.character(data[i,j]))))){
node <- tmp$AddChild(data[i,j])
tmp <- node
}
else{
tmp <- Navigate(tmp, c(as.character(data[i,j])))
}
}
}
plot(rootNode)
`
pour d'autres cas Testée de test à et il fonctionne très bien.
data <- data.frame(a=c(1,1,2,2),b=c(1,2,4,3),c=c(2,2,2,2),d=c(2,3,3,4))
La méthode standard pour ce faire est la suivante:
data <- data.frame(a=c(1,1,2,2),b=c(1,2,4,3),c=c(2,2,2,2),d=c(2,3,3,4))
data$pathString <- paste("0", data$a, data$b, data$c, data$d, sep = "/")
tree <- as.Node(data)
Assurez-vous de lire la documentation, par exemple https://cran.r-project.org/package=data.tree/vignettes/data.tree.html#create-a-tree-from-a-data.frame
merci .. Ce qui a aidé le but .. –