NestTree
NestTree[f,tree]
tree の各葉に子を加える.f[expr]はデータ expr を持つ葉の新たな子のデータのリストを与える.
NestTree[f,tree,n]
f を各葉のデータにレベル n まで連続的に適用し,各葉に最大で n レベルを加える.
NestTree[f,tree,n,h]
新たな部分木のデータに h を適用する.
NestTree[f,expr,…]
データ expr を持つ木の葉の上に f をネストさせることで木を構築する.
詳細とオプション
- NestTreeは,演算子 f を使って連続的に子のより深いレベルを葉に加えることでTreeオブジェクトを育てる.
- NestTreeは式から木を構築して木の葉を伸ばすのに役に立つ.
- ネストしている各新レベルについて,すべての葉Tree[expr,None]がTree[expr,{Tree[expr1,None],…}]で置換される.ここで f[expr]は{expr1,expr2,…}を与える. »
- NestTree[f,tree,n]の n は任意の非負の機械整数またはInfinityでよい. »
- NestTree[f,tree,n]は最高で n レベルを各葉に加える.f がNone,{},< >またはHold[]を返す場合は,その葉にそれ以上のレベルは加えられない. »
- NestTree[f,tree,n,h]では,最初の葉と中間ステップで生成された葉を含むすべての葉Tree[expr,None]がTree[h[expr],…]で置換される. »
- expr が明示的なTreeオブジェクトではない場合,NestTree[f,expr,…]はNestTree[f,Tree[expr,None],…]に等しい. »
- f[expr]がHold[expr1,expr2,…]を与えるなら,式 expriはNestTree[f,tree,n,h]では評価されずに関数 f と h に与えられる. »
- NestTree[f,tree]の f[expr]は{expr1,expr2,…},<key1expr1,key2expr2,… >,Hold[expr1,expr2,…]またはNoneを与えなければならない.
- f が{…},<|…|>,Hold[…]またはNoneを返さない場合は,NestTree[f,tree,…]はNestTree[List@*f,tree,…]に等しい. »
- NestTree[f,tree,0]は tree を与える.NestTree[f,tree,0,h]はTreeMap[h,tree,{-1}]に等しい.
- f[expr]が<key1expr1,key2expr2,… >を与えるならNestTree[f,expr,n]はTree[expr,<key1tree1,key2tree2,… >]を与える.ここで,treeiはNestTree[f,expri,n-1]の結果である. »
- NestTreeにはTreeと同じオプションが使える.
例題
すべて開くすべて閉じるスコープ (9)
オプション (9)
木のレイアウトとグラフィックスオプション (3)
アプリケーション (8)
TextElementオブジェクトを木に変換する関数を定義する:
TextElementの子要素を与える関数を定義する:
TextElementから"GrammaticalUnit"を抽出する関数を定義する:
TextElementを木に変換する:
特性と関係 (12)
NestListは演算子 f を式に連続的に適用した結果のリストを与える:
NestTreeは演算子 f を式に連続的に適用した結果の木を与える:
NestTreeはリストの各要素に連続する演算子を適用する:
NestTree[f,expr,…]は式 expr が木ではない場合は expr から始めて木を構築する:
これはNestTree[f,Tree[expr,None],…]に等しい:
f が{…},<|…|>,Hold[…]またはNoneを返さない場合は,NestTree[f,tree,…]はNestTree[List@*f,tree,…]に等しい:
NestTree[f,Tree[expr,None],0]はTree[expr,None]を与える:
f[expr]がNoneを与えるならNestTree[f,Tree[expr,None]]はTree[expr,None]を与える:
f[expr]が{…}またはHold[…]を与えるならNestTree[f,Tree[expr,None]]はTree[expr,{…}]を与える:
たとえ f[expr]が{}またはHold[]を与える場合でもこれは真である:
NestTreeは,最大レベルに達するまで,あるいは演算子 f がNone,{},< >またはHold[]を返すまで,連続的に f を適用する:
NestTree[f,Tree[expr,None],n,h]は,データ h[expr]と子NestTree[f,Tree[expri,None],n-1,h]を持つ木を返す.ここで,f[expr]は{expr1,expr2,…}を与える:
NestTree[TreeChildren,Tree[tree,None],Infinity,TreeData]は tree に等しい:
NestGraphはグラフの各頂点に演算子を適用する:
NestTreeは木の各葉に演算子を適用する:
NestTreeを使ってCompleteKaryTreeの出力を模倣する:
木を実際のGraphオブジェクトに変換する:
内部の部分木の子1から3の間に0から10までのランダムな整数を含む木を生成する:
RandomTreeを使って特定の大きさのランダムな木を生成する:
テキスト
Wolfram Research (2021), NestTree, Wolfram言語関数, https://reference.wolfram.com/language/ref/NestTree.html (2022年に更新).
CMS
Wolfram Language. 2021. "NestTree." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/NestTree.html.
APA
Wolfram Language. (2021). NestTree. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/NestTree.html