多くのプログラミング言語では、リストと行列にインデックスを付けることができます。 これは Jmp でも可能です。
list= {"A", "B", "C"};
mat=[1,2,3];
list[3]
mat[2]
Jmp 13 からは、別のレベルのインデックス作成が可能になりました。データテーブルの添字付け
現在、ユーザーは読み取りおよび書き込みアクセスを使用して、データ テーブル内のエントリに簡単にインデックスを付けることができます。
3 番目の種類のインデックス作成があります: 表示ツリーのインデックス作成
特定のレポートについて、表示ツリーをたどって特定のオブジェクトを識別できます。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Size( 437, 413 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) )
)
Report(gb)["Graph Builder"][AxisBox(1)]
Jmp には、インデックス作成がユーザーの日常業務に役立つ場所が他にもあるかもしれません...
式の場合、ツリーをたどるのはさらに複雑です。
Y変数を取得するには:重さから
myExpr=Expr(gb = dt << Graph Builder(
Size( 437, 413 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) )
));
使わなければなりません
Arg(Arg(Arg(Arg(Arg(myExpr,2),2),3),2),1) // :weight
とても壊れやすいです!!!!
回避策: 変数式をリストに変換し、リストのインデックス付けを使用します。
myExpr=Expr(Variables( X( :height ), Y( :weight ), Overlay( :sex ) ))
Substitute(Name Expr(myExpr),Expr(Variables()),Expr(List()))["Y"];
ただし、いくつかの欠点があります。
- 単一レベル、つまりフラットな階層でのみ機能します
- 最初の名前付き引数だけが見つかり、同じ識別子を持つそれ以降の名前付き引数は無視されます。
myExpr=Expr(Variables( X( :height ), Y( :weight ),Y(:height ), Overlay( :sex ) ));
Substitute(Name Expr(myExpr),Expr(Variables()),Expr(List()))["Y"]; // returns :weight, ignores Y(:height)
- 最初の引数を返すだけで、それ以降の引数は失われます
myExpr = Expr(Distribution(columns(:height, :weight)));
Substitute(Name Expr(myExpr),Expr(Distribution()),Expr(List()))["columns"];
//returns :height -> :weight gets lost
表示ツリーのインデックス付けと同様に、式ツリーを登る可能性はありますか?
何かのようなもの:
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
myExpr=Expr(gb = dt << Graph Builder(
Size( 437, 413 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Y(:height), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) )
));
//instead of:
Arg(Arg(Arg(Arg(Arg(myExpr,2),2),3),3),1)
<BR />// I want to use:
myExpr[2][2["Variables"]["Y"(2)][1]
//assign // send // Graph Builder // Variables