Last chance! 50% off unlimited learning
Sale ends in
Prune a tree by removing all the branches above a given level.
treeprune(X, root = 1, level = 0)
Object of class "linnet"
or "lpp"
.
Index of the root vertex amongst the vertices of as.linnet(X)
.
Integer specifying the level above which the tree should be pruned.
Object of the same kind as X
.
The object X
must be either a linear network, or a derived
object such as a point pattern on a linear network. The linear network
must be an acyclic graph (i.e. must not contain any loops) so that it
can be interpreted as a tree.
This function removes all vertices
for which treebranchlabels
gives a
string more than level
characters long.
treebranchlabels
for calculating the branch labels.
deletebranch
for removing entire branches.
extractbranch
for extracting entire branches.
linnet
for creating networks.
# NOT RUN {
# make a simple tree
m <- simplenet$m
m[8,10] <- m[10,8] <- FALSE
L <- linnet(vertices(simplenet), m)
plot(L, main="")
# compute branch labels
tb <- treebranchlabels(L, 1)
tbc <- paste0("[", tb, "]")
text(vertices(L), labels=tbc, cex=2)
# prune tree
tp <- treeprune(L, root=1, 1)
plot(tp, add=TRUE, col="blue", lwd=3)
# }
Run the code above in your browser using DataLab