JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法を教えてください。パーティションモデルによってトレーニングされた、欠損値のあるデータのある欠損式、JSLをJMP式で使用できる形式に変換する方法。
ab>=-14&P1>=174.1&EVk<34341 or Missing&xyz<214.98 or Missing&EVk<154 or Missing&P1>=1741
に
:ab >= -14 & :P1 >= 1741 & (:EVk < 154 | Is Missing( :EVk )) & (:xyz < 214.98 | Is Missing( :xyz ))
ありがとう!
スクリプティングRe:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法ここで、「AB」、「P1」、および「EVk」は複数回のパーティションです。有効なパラメーターのみを保持するにはどうすればよいですか?
そして、どのように自動的に回します
「EVk <154または欠落」
に
":EVk <154 | is Missing(:EVk)"?
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法したがって、当てはめられたパーティションモデルを保存すると、それは列式になります。
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法パーティションモデルを選択した後、予測式を列式として保存するだけです。
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法マークベイリーに感謝!
しかし、リーフラベルの式をコピーして、通常の式として計算しようとしましたが、これは誤りです。
例えば:
dt<<NEW column="">=-14&:P1>=1741&:xyz<214.98 or Missing&:EVk<154 or Missing));dt<<RUN formulas=""></RUN></NEW>
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法はい、そのコードは間違っています。そのコードは、リーフラベルの数式として保存されるものではありません。数式から必要なものを誤ってコピーし、間違ったコードをスクリプトに貼り付けました。
リーフラベルの保存された数式をそのままコピーして、新しい列のFormula()引数の引数として貼り付けた例を次に示します。
Names Default To Here( 1 );
// open an example
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// create a new column for character data and populate it with formula based on a
// previously saved formula for leaf labels.
dt << New Column( "Text",
Character,
Formula(
If( !Is Missing( :height ) & :height >= 63,
If( !Is Missing( :height ) & :height >= 67,
"height>=63&height>=67",
"height>=63&height<67"
),
"height<63"
)
)
);Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法はい。「予測式」を直接使用できることも知っています。しかし、この予測式は非常に大域的で、非常に大きく、非常に複雑なので、他のファイルで使用するのは不便です。
「リーフラベル式」は正確ですが、「パーティション」モデルによって自動的に生成されたリーフラベル式は直接使用できません。
そこで、VBAを使用してこれらのリーフラベル式をExcelに転送し、JMP式で使用できる形式に自動的に変換しました。
しかし、この操作は操作のプロセス全体を使用するため、完全に自動化することはできません。
マークベイリーに感謝!
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法したがって、JSLを使用してこれらのリーフラベル式をJMPの使用可能な形式に変換する方法を知りたいと思っています。Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法リーフラベルの数式列の背後に数式が既にあるため、混乱していると思います。何も変換する必要はありません。やりたいステップをより明確に説明できますか?

Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法もちろん、リーフラベルの数式列のテキストをこの方法で直接計算することはできません。

Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法ジェフありがとう!
元のファイルでは使用されなかったこれらのリーフラベル式を取得したので。
したがって、リーフラベルの数式列から数式を削除し、テキストのみを取得して、さまざまなリーフラベルの数式のテキストをファイルにまとめました。
これらのテキストのリーフラベル式は、JSLを使用して他のデータを計算するために使用されます。したがって、この変換の問題があります。
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法誰かがすでに分析を行っており、元のモデルを再現できなくなったと言っているのに、Excelにエクスポートされたデータから数式を再作成しようとしているのですか?可能であれば、JMPで同じモデルを再度作成して、数式列を直接エクスポートする方がはるかに簡単です。 今後は、作成された新しいモデルについては常にそのリーフ列をエクスポートするので、これに再度対処する必要はありません。 本当に数式を再作成する必要があり、Excelファイルを参照しているときに「ブルートフォース」で入力できない場合(スクリプトに不慣れな人にとっては、何百もの用語がない限り、これが最速だと思います)、次を使用できます。生のテキストを数式に変換するための代替(単純)または正規表現(複雑)の数式。 それは苦痛のように聞こえるし、できれば誰もがそれを避けるように言っていると思います。
または、各リーフのその行かどうかを示すtrue / false値を使用して、可能な各リーフの列のセットを作成しようとしていますか?この場合でも、葉の式を保存してから、葉のラベルがテキスト文字列と一致するかどうかを確認する式を使用して新しい列を作成します。
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法
はい、JSLを使用してさまざまなファイルを自動的に1つのファイルに分割し、それらを数式の形式で保存することで取得されたこれらのリーフラベルの数式はまだ見つかりません。Xファクターを削除すると、数式が削除されます。
ありがとう!
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法今私は混乱しています。 結果のテーブルに期待する列や、そこに到達するために取ると思われる手順など、達成しようとしていることを教えてください。
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法次のJSLを押して、非反復リーフラベル式ファイルT1を取得します。
T1の各リーフラベル式の特定の内容を1行ずつT1ファイルの式「Formula1」に抽出する方法は?
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt[30 :: 35, "height"] = "";
p = Partition( Y( :weight ), X( :age, :sex, :height ), Validation Portion( 0.3 ), Informative Missing( 1 ), split Best( 2 ) );
p << save leaf label formula;
p << Close Window;
Wait( 0 );
dt << Sort( By( 6 ), Order( Descending ), replacetable( 1 ) );
dt << Select Where( :Leaf Label Formula != Lag( :Leaf Label Formula, -1 ) );
d3 = dt << Subset( Output Table( "T1" ), Selected Rows( 1 ), selected columns( 0 ) );
Wait( 0 );

Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法「T1」テーブルの「リーフラベル式」列のテキストを取得して、対応する式フォームを取得するだけです。
グローバルな数式は必要ありません。
ありがとう!
Re:JSLを使用してディシジョンツリーパーティションリーフラベル式をJMP式で使用できる形式に変換する方法これらのオプションの1つは機能しますか?私思う彼らはあなたが探しているものを達成します:
//For each row (leaf of partition) create a new formula column
//indicating whether that row is in that leaf
for(r=1, r<= n row(d3), r++,
Eval(Eval Expr(
d3 << New Column("Is Leaf " || d3:Leaf Label Formula[r], Numeric, "Continuous", Format("Best", 12), Formula(:Leaf Label Formula == Expr(d3:Leaf Label Formula[r])));
));
);
//Or if you want it all in one column (slower if multiple columns):
for(r=1, r<= n row(d3), r++,
Eval(Eval Expr(
d3 << New Column("Alt Is Leaf " || d3:Leaf Label Formula[r], Numeric, "Continuous", Format("Best", 12), Formula(Expr(dt:Leaf Label Formula << Get Formula) == Expr(d3:Leaf Label Formula[r])));
));
);