FitMode-SaveColumnによって生成された新しい列の参照こんにちは、
私はJSLのフィットモデルによって生成された残差列の名前を取得しようとしています。こうすると、次の行で残差を1000倍にスケールアップできます。これが私のスクリプトです。
Model = Fit Model(
Y( :Raw Leveling ),
Effects(
:Xa,
:Ya,
Transform Column( "Xa^2", Formula( :Xa * :Xa ) ),
Transform Column( "Ya^2", Formula( :Ya * :Ya ) ),
Transform Column( "Xa*Ya", Formula( :Xa * :Ya ) )
),
Personality( "Standard Least Squares" ),
Emphasis( "Minimal Report" ),
Run
);
Model << Residuals;
New Column("Residual (nm)", formula(Column(10)[]*1000)); 今度はスケールアップをするために#列を使わなければなりません。Model << Residualsで生成された、残りの列の列名を取得できれば、スクリプトは別のテーブルに適用でき、手動で列番号を変更する必要はありません。
これは、より一般的な質問にも関連しています。JMPによって自動的に生成された列への参照を取得する方法を教えてください。
再:FitMode-SaveColumnによって生成された新しい列の参照スクリプト内でこれを複数回実行すると、関数によってこの種のことがより簡単になります。 拡大中 @julian の答え:
//Saves residuals column and returns reference to column
SaveResiduals = function({mdl},
mdl << Residuals;
dt = mdl << get data table;
column( nCols( dt ) );
);
rescol = SaveResiduals(Model);
rescol << Set Name("Residuals");再:FitMode-SaveColumnによって生成された新しい列の参照こんにちはジュリアン
あなたのアイデアを共有してくれてありがとう。
はい。もう1つの方法は、最後の列を指すために列の総数を使用することです。
私が持っているもう一つの考えはそれがFit Model機能によって生成されるときに私は列名を割り当てることができますか?スクリプトをカスタマイズするのも簡単です。
ありがとうございます。
- ジハオ
再:FitMode-SaveColumnによって生成された新しい列の参照こんにちは @Zihao 、
残余メッセージ自体から列参照を取得する方法はわかりませんが、保存された列は常にテーブルの最後になるため、この種の状況で行ったことは最後の変数参照を使用することです。テーブル内の列数に基づく列。次のようなものがあります。
dt = current data table();
lastColumn = column(nCols(dt));
おそらくそれはあなたの状況でうまくいくでしょうから、列番号をハードコードする必要はないでしょうか?したがって、あなたの場合、上記に基づいて新しい列を作成する簡単な方法は次のようになります。
New Column("Residual (nm)", SetEachValue(lastColumn[]*1000));
これが役立つことを願っています、
@julian