TreeFold
TreeFold[f,tree]
tree の部分木を連続的にたたみ,f を各部分木のデータとその子についての結果のリストの両方に適用する.
TreeFold[f,tree,h]
tree のデータではなく h[tree]に f を 適用する.
TreeFold[{f,f-1},tree,h]
f-1を最後のレベルに,f を内側の各レベルに適用する.
詳細
- TreeFoldは,二項演算子 f を使用して部分木を下から上にたたむことでTreeオブジェクトから式を構築する.
- TreeFoldは木のデータあるいは部分木を一つの値に累積したり削減したりするのに役に立つ.
- TreeFoldは部分木を深さ優先順(親の前に子をたたむ形)でたたむ. »
- TreeFold[f,tree,h]の h[tree]はTreeData[tree]としてよりむしろ f の第1引数として使われる. »
- tree が葉ならTreeFold[{…,f-1},tree,h]は f-1[h[tree]]を与える. »
- TreeFold[f,Tree[data,<key1tree1,key2tree2,… >]]は f[data,<key1res1,key2res2,… >]を与える.ここで,resiはTreeFold[f,treei]の結果である. »
- TreeFold[f][tree]はTreeFold[f,tree]に等しい. »
- TreeFold[f][tree,h]はTreeFold[f,tree,h]に等しい. »
例題
すべて開くすべて閉じる例 (4)
スコープ (9)
アプリケーション (11)
立体領域と操作の木をCSGRegionに変換する:
木をTextElementに変換する:
TreeFoldを以下の関数と一緒に使って木の葉の最小レベルを計算する:
都市の測地位置に従って,その階層的クラスタリングを与えるグラフを作成する:
クラスタリングの階層をGraphオブジェクトからTreeオブジェクトに変換する:
各葉について,都市の測地位置を階層的クラスタリンググラフの指標から入手する:
クラスタを表す各部分木について,子の空間的中央値を含む木を与える:
各葉の都市の位置と各クラスタの空間的中央値を使って測地位置の木を入手する:
2人の人を比べて,第1子が誕生したときに若かった方をその子とそのときの年齢とともに与える関数を定義する:
2人の兄弟を比べて,年長の方をその誕生日とともに与え,加えて彼らの子孫の中で第1子の誕生時に最年少だったものを与える関数を定義する:
特性と関係 (14)
Foldはリストの要素に二項演算子 f を連続的に適用した結果を与える:
TreeFoldは木のデータに二項演算子 f を連続的に適用した結果を与える:
TreeFoldは各子の結果のリストに演算子 f を適用する:
TreeFold[f,Tree[data,None]]は data を与える:
TreeFold[{f,f-1},Tree[data,None]]は代りに演算子 f-1をデータ data に適用する:
TreeFold[f,Tree[data,{…}]]は f[data,{…}]を与える:
TreeFold[f,tree,h]は f を h[tree]と子の木 treeiについての結果TreeFold[f,treei,h]のリストの両方に適用した結果を与える:
TreeFold[f,tree]はTreeFold[{f,Identity},tree]に等しい:
TreeFold[{Tree,Tree[#,None]&},tree]は tree に等しい:
TreeFoldはこのデータと結果に関数を適用する:
TreeMapも同じ結果が計算できる:
根の新たなデータはTreeFoldの結果である:
TreeFoldを使って各部分木の上に親ノードを挿入する:
Mapは,デフォルトで,式の引数にマップされる:
TreeFoldを使って各部分木の前に兄弟ノードを挿入する:
MapはHeadsTrueである式の中の部分式にマップされる:
TreeFold[{f,f-1},tree]はTreeFold[f,TreeMap[f-1,tree,{-1}]]に等しい:
TreeFoldを使って木の深さが計算できる:
TreeFoldを使って木のサイズが計算できる:
TreeFoldを使って木をネストした規則に変換できる:
TreeFoldを使って木の葉から式が作成できる:
テキスト
Wolfram Research (2021), TreeFold, Wolfram言語関数, https://reference.wolfram.com/language/ref/TreeFold.html (2022年に更新).
CMS
Wolfram Language. 2021. "TreeFold." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2022. https://reference.wolfram.com/language/ref/TreeFold.html.
APA
Wolfram Language. (2021). TreeFold. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/TreeFold.html