ループ番号に応じた変数名を作成する方法<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />こんにちは
ループの実行回数に応じて変数を動的に作成しようとしています。 どうすればこれを行うことができますか?
例
for(i=1, i
//ここにコードが入ります
変数 || i = 現在のデータテーブル(); //これは明らかに機能しませんが、アイデアは理解していただければ幸いです。 最終的には、ループが完了するまで var1、var2、var3 などを用意したいと考えています。
)
これには意味がありますか?
ありがとう
Re: ループ回数に応じた変数名を作成する方法参照ごとに新しい変数を作成するのはなぜでしょうか? インデックスによるアクセスの場合はデータ テーブル参照をリストに格納するか、キーによるアクセスの場合は連想配列にデータ テーブル参照を格納してはどうでしょうか?
Re: ループ回数に応じた変数名を作成する方法ああ、よかった....ありがとうございます。 JMP でもう 1 つ学ばなければならないことがあります...
Re: ループ回数に応じた変数名を作成する方法Yes は各変数を ^ ... ^ で囲み、jsl ステートメントをEval( Parse( Eval Insert("\[ ... ]\")))パターン。
たとえば、次のコードは列の仕様制限を設定します。
Open("$SAMPLE_DATA/Big Class.jmp");
cHeight = Column("高さ");
Column("高さ") << Set Property( "仕様制限", {LSL(55), USL(75), Target(65)} );
使用したい次の変数割り当てがあるとします。
ColName = "高さ";
下 = 55;
上部 = 75;
ターゲット = 40;
次に、次のように書くことができます。
Eval( Parse( Eval Insert("\[
Column("^colName^") << Set Property( "スペック制限", {LSL(^下^), USL(^上^), ターゲット(^ターゲット^)} );
]\")))
-デイブ
Re: ループ回数に応じた変数名を作成する方法デイブ、
その構文を見たことがありません。^ はテキストに含める変数を囲んでいますか?私だったら次のように書くでしょう:
tmp = "var" ||文字(i) || " = 現在のデータ テーブル()";
eval(解析(tmp))
これは明らかにあなたが書いたものよりも効率が低くなります。
Re: ループ回数に応じた変数名を作成する方法先週の JMP Discovery カンファレンスのアドバンスト スクリプティング パネル ディスカッションで、これに関する講演がありませんでしたか? 素晴らしいセミナーでした。著者は講演についてメモを投稿したでしょうか。
Re: ループ回数に応じた変数名を作成する方法みんなありがとう!
Re: ループ回数に応じた変数名を作成する方法別の表記法を次に示します。
For( i = 1, i <= x, i++,
Eval( Parse( Eval Insert( "\[
var^i^ = Current Data Table()
]\" ) ) )
)
-デイブ
Re: ループ回数に応じた変数名を作成する方法アブドゥルジ
これは Eval (Substitute ( )) を使用する 1 つの方法です。
// dv = dummy variable
x = 10;
For( i = 1, i <= x, i++,
Eval(
Substitute(
Expr(
dv_variable = i;
Show( dv_variable );
),
Expr( dv_variable ), Parse( "Variable Name " || Char( i ) )
)
)
);
マイケル