私は特定のタイプのノード(特定のパターンに従うノード)だけを集めたいツリー(式)を持っています。Mathematica - ツリー内のノードを選択的に集める
A = {{{{},{0.3,0.3}},{0.2,0.2}},{0.1,0.1}}; TreeForm[A, PlotRangePadding->0] Cases[A, {x_Real, y_Real}, Infinity]
出力:
これはそれを行うための良い方法です私は、下記の簡略化した例がありますか?
{x1_、y1_}、{x2_、y_2}}を検索したい場合は{x_、y_}のような式を除外することはできますか?
よろしく
EDIT(14/07/2011)
IはList
以外のヘッドを使用して大幅に衝突することなく、そのようなサブ式を見つけることに役立つことを発見しました。例えば
、上記を改質:
A = {{{{}, pt[0.3, 0.3]}, pt[0.2, 0.2]}, pt[0.1, 0.1]};
List @@@ Cases[A, _pt, Infinity]
出力:
{{0.3,0.3},{0.2,0.2},{0.1,0.1}}
NumericQのアイデアをありがとう。私は別の場所でx_Real | x_Integerパターンを使用していましたが、置き換えます。 –