Re: For Each() 構文Scripting Index の For Each のドキュメントでは、これについてある程度説明しています。 アクロスの例は、構文の最良のアイデアを提供します

Names Default To Here(1);
// Across multiple containers
x = {"a", "b"};
y = {"d", "c"};
For Each({{a, b}, index}, Across(x, y), Show(a||b, index));Re: For Each() 構文Scripting Index にあるように構文をいじりましたが、同じエラーが依然として当てはまります。 これは、私の特定の設定で理解できないことがあるということを意味しているに違いありません。 さらにいくつかのことをテストする必要があり、調査結果や追加の質問についてここに投稿します。ありがとうございました、 @jthi !
Re: For Each() 構文これはパズルのもう 1 つのピースだと思います。
複数のコンテナーの Across() フォーマットが使用されています。私が持っている値の数では理にかなっていますが、これには Across() も必要です。現在、データテーブルをマトリックスに保存しています
matrix1 = dt1 << Get as Matrix();
Across() 内のアイテムの数は中括弧内のコンテナー (値) の数と等しくする必要があるため、Across() はどのように適切に設定され、それまたはデータ テーブルで正しく動作するのでしょうか?
Re: For Each() 構文あなたは実際に何をしようとしていますか?それとも、構文を理解しようとしているだけですか?
Re: For Each() 構文私は3つのテーブルを持っています:
- dt1: 測定値と予測式
- dt2: ターゲット値 (現在行列として保存):
matrix1 = dt2 << Get as Matrix();
- dt3: (Prediction) Profiler ツールの回帰式の係数を記録するテーブル
私が望んでいるのは、For Each() を使用して dt2 を反復処理し、対応する予測式を dt1 で使用してから、(Prediction) Profiler が生成する対応する係数を記録することです。 標準の For() ループでこれを実行できると確信していますが、For Each() の方がより適切なオプションであるとアドバイスされました。
Re: For Each() 構文これは、予測の絶対値を取得するためだけですか?紛らわしいですごめんなさい。
Names default to here( 1 );
dt1 = open("$SAMPLE_DATA\Big Class.jmp");
fm = dt1 << Fit Model(
Y( :height, :weight ),
Effects( :age, :sex, :age * :sex ),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Leverage" ),
Run(
:height << {Summary of Fit( 1 ), Analysis of Variance( 1 ),
Parameter Estimates( 1 ), Lack of Fit( 0 ), Scaled Estimates( 0 ),
Plot Actual by Predicted( 1 ), Plot Regression( 0 ),
Plot Residual by Predicted( 1 ), Plot Studentized Residuals( 0 ),
Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ),
Box Cox Y Transformation( 0 )},
:weight << {Summary of Fit( 1 ), Analysis of Variance( 1 ),
Parameter Estimates( 1 ), Lack of Fit( 0 ), Scaled Estimates( 0 ),
Plot Actual by Predicted( 1 ), Plot Regression( 0 ),
Plot Residual by Predicted( 1 ), Plot Studentized Residuals( 0 ),
Plot Effect Leverage( 1 ), Plot Residual by Normal Quantiles( 0 ),
Box Cox Y Transformation( 0 )}
)
);
fm << Prediction Formula; //
dt2 = new table("Targets",
<<NEW column=""></NEW>Re: For Each() 構文@vince_faller 、 大丈夫だよー! データセット (dt1 内) から予測式が生成されたら、理想的な解 (dt2 内) を使用し、逆方向に作業して、この理想的な値 (dt3 に保存) を取得するために必要な係数を取得します。 予測プロファイラーは、これを行うために必要な値の係数を表示するので、ボックスから値を取得する必要があります。
バックグラウンドで、話している間、For() ループを使用してテストを行っています。それが機能する場合は、このプロジェクト全体で For Each() を使用して破棄できます。とはいえ、問題に直面した今、その理由を理解することがさらに励みになります。
Re: For Each() 構文行列をループしようとしている場合、引数には異なる構造があります。 スクリプト インデックスの小さなプルダウン メニューを見ると、For Each() ループで使用できるさまざまな構成の例が示されています。

一番、
M
Re: For Each() 構文ありがとうございました、 @MikeD_アンダーソン.これらのオプションのそれぞれに 1 日以上を費やしましたが、元の投稿で言及したエラーが原因です。
Re: For Each() 構文例に欠けている部分は、プルしたい値が単一の値またはリストの形式でなければならないということだと思います。 それでFor each( { val1, val2, ..., valn, index}, ...)引数リストにあまりにも多くのものがあるため、機能しません。 だがFor each( { {val1, val2, ..., valn}, index}, ...) の方がうまくいくかもしれません。 それはまた、 @jthi以前に提供されました。
M
Re: For Each() 構文こんにちは、
二重中括弧については既に調査しましたが、元の投稿のように「引数が多すぎます」というエラーに出くわしています。これは、Across() で正しいコンテナー数を指定していないためだと思います。 Across() を正しく入力する方法がわかりません。
現時点では、私の For() ループの代替案は非常にうまく肉付けされており、For Each() 関数の必要性を置き換える必要があります。 とはいえ、きちんと使い方を学びたいところですが、別の機会にこのスレッドを復活させようと思います。 しばらくの間、他の場所で集中する必要があります。
議論していただきありがとうございます!
For Each() 構文こんにちは、
For Each() 関数で使用できる値の数を拡張したいと考えています。スクリプト インデックスと、JMP コミュニティおよび JMP 自体で見つけたいくつかの例を組み合わせると、使用されている値とインデックスは 1 つだけです: For each( { val1,index}, ... )。 私は使用したいと思います: For each( { val1, val2, ..., valn,index}, ...) 。 中括弧内の値の数を増やすと、「引数が多すぎます」というエラーが表示されます。
奇妙なことに、このエラー メッセージには、エラーの行番号が、スクリプト内のその関数の実際の行番号ではなく、For each() 関数に渡される行列の合計行数に対応していることが示されています。 値の数を val1 とインデックスのみに変更することで、関数に渡す行列の行数ではなく、使用しようとしている値の数であることを確認できます。これは機能します。
渡される行列には、For Each() 関数に渡したい値の数と同じ数の列があります。
任意のヒント? これは可能でしょうか?
自動化とスクリプト作成品質およびプロセスエンジニアリングウィンドウズ