JSLマスターの皆さん
JSLを操作することで、データ1とデータ2の最小差の数を確認できます。
私の質問は今後です。
たとえば、4番目が最小値の場合、JSLによって作成されたSNumber列に22を入力できるようにします。
(22はdata1の4番目です。)
私は以下の説明を書き込もうとしましたが、スクリプトの実行に失敗しました。それをする良い方法はありますか?
:SNumber [i] = Column( "A")[:SNumber [I]];
基本的な質問ですみません、そしてあなたのサポートをありがとう。
ウリボ
Names Default To Here( 1 );
dt1 = open("C:\Users\Desktop\Data1.jmp");
temp = Column( "A" ) << Get Values;
dt2 = open("C:\Users\Desktop\Data2.jmp");
temp2 = Column( "B" ) << Get Values;
Row = N Row( dt1 );
dt2 << Add Multiple Columns( "SNumber", 1, numeric );
a = 0;
For( i = 1, i <= Row, i++,
a = temp[i];
b = 0;
diff_list = {};
For( j = 1, j <= Row, j++,
b = temp2[j];
Insert Into( diff_list, a - b );
);
Show( diff_list, Min( diff_list ) );
:SNumber[i] = Loc( diff_list, Min( diff_list ) );
);
と言う部分、:Data1
そして、:Data2
この操作を実行する予定の1列目と2列目の列名です。
列名を置き換えるだけでOKです。
バイロン
返信が遅くなってすみません。
アドバイスありがとう。
私はあなたが手に入れたスクリプトを使ってみましたが、基本的な知識が不十分だったので動かすことができませんでした。
エラー内容は以下の通りです。
名前が解決できません: Data1 'Data1'へのアクセスまたは評価 , :Data1/*###*/
次のスクリプトで、/*###*/の付いている部分はエラーです。
dt = Current Data Table();
d1 = :Data1/*###*/ <<GET values=""></GET>
get値を使用すると、値の行列が得られます。 この場合は、行列関数を使って最小の位置を見つけることができるので、とても便利です。マトリックス演算子があなたのためにすべての大変な仕事をします。
dt=current data table();
d1=:data1<<GET values=""></GET>