View source: R/derivationTrees.R
filterANLid | R Documentation |
filterANLid()
deletes all nodes whose node$ID
does not match
node$ID
.
If the resulting list is empty, a list of length 0 is returned.
filterANLid(ANL, nodeID = 1)
ANL |
Attributed node list. |
nodeID |
Integer. The identifier of a symbol. |
An attributed node
has the following elements:
$ID
: Id in the symbol table ST
.
$NonTerminal
: Is the symbol a non-terminal?
$Pos
: Position in the trail.
$Depth
: Depth of node.
$Rdepth
: Residual depth for expansion.
$subtreedepth
: Depth of subtree starting here.
$Index
: R index of the node in the derivation tree.
Allows fast tree extraction and insertion.
For the implementation of crossover and mutation, we expect a non-terminal symbol identifier.
An attributed node list with nodes whose depths are in
minb:maxb
.
Each node is represented as a list of the following attributes:
Node$ID
: Id in the symbol table ST.
Node$NonTerminal
: Is the symbol a non-terminal?
Node$Pos
: Position in the trail.
Node$Depth
: Depth of node.
Node$Rdepth
: Residual depth for expansion.
Node$subtreedepth
: Depth of subtree starting here.
Node$Index
: R index of the node in the derivation tree.
Allows fast tree extraction and insertion.
Other Access Tree Parts:
filterANL()
,
treeANL()
,
treeChildren()
,
treeRoot()
g<-compileBNF(booleanGrammar())
set.seed(111)
a<-randomDerivationTree(g$Start, g, maxdepth=10)
b<-treeANL(a, g$ST)
c<-filterANLid(b, nodeID=5)
d<-filterANLid(b, nodeID=6)
e<-filterANLid(b, nodeID=7)
f<-filterANLid(b, nodeID=8)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.