2017-06-19 2 views
-2

Lassen Sie uns sagen, dass ich ein Testdaten wie dieses:Wie kann ich die Tiefe eines Knotens von data.tree Objekt erhalten?

library(data.tree) 

df <- structure(list(parent = c("part1", "part3", "part7", "part4", 
"part9", "part1"), child = c("part7", "part12", "part4", "part27", 
"part10", "part13"), children = c("part4", "", "part27", "", 
"", ""), children1 = c("part27", "", "", "", "", ""), pathString = c("Root/part1/part7/part4/part27", 
"Root/part3/part12//", "Root/part7/part4/part27/", "Root/part4/part27//", 
"Root/part9/part10//", "Root/part1/part13//")), .Names = c("parent", 
"child", "children", "children1", "pathString"), row.names = c(NA, 
6L), class = "data.frame") 
df$children <- "" 
df$children1 <- "" 

ich data.tree wie folgt erstellt:

test_tree <- as.Node(df) 
print(test_tree, limit = 50) 

Ich versuche, die Tiefe jeder übergeordneten Knoten im Baum zu erhalten von der Wurzel. Ich habe versucht, die Dokumente zu lesen, aber ich konnte nichts in Bezug auf die Tiefe eines Baumes finden.

Gibt es einen Weg in R, um die Tiefe des Baumes aus diesem data.tree Plot zu erhalten?

Antwort

0

Nicht sicher, was Sie mit "Tiefe jedes Elternknoten im Baum von der Wurzel" meinen. Vielleicht das?

library(data.tree) 
data(acme) 
print(acme, 'height', 'level') 

Dies druckt wie folgt aus:

      levelName height level 
1 Acme Inc.        3  1 
2 ¦--Accounting      2  2 
3 ¦ ¦--New Software     1  3 
4 ¦ °--New Accounting Standards  1  3 
5 ¦--Research       2  2 
6 ¦ ¦--New Product Line    1  3 
7 ¦ °--New Labs      1  3 
8 °--IT        2  2 
9  ¦--Outsource      1  3 
10  ¦--Go agile      1  3 
11  °--Switch to R     1  3 

Beachten Sie, dass height und level sind Eigenschaften/Aktiv auf Node. Sie können also auch acme$height anrufen. Für eine Liste aller aktiven Elemente geben Sie ?Node ein.

Verwandte Themen