JSL: すべての列を共通の初期項でグループ化するにはどうすればよいですか?最初に記述された用語に基づいて、共通のバンドルにグループ化したい dt (70,000 列) があります。
たとえば、それぞれが「ChamberID」、「RecipeID」、または「SlotNo」で始まる 10K 列です。
dt を調べて共通の列をすべて見つけ、それらを折りたたみ可能なバンドルにグループ化するには、これをどのようにスクリプト化すればよいでしょうか?

自動化とスクリプト作成Re: JSL: すべての列を共通の初期項でグループ化するにはどうすればよいですか?以下は、データ テーブルに列グループを作成する例である小さなスクリプトです。

Names Default To Here( 1 );
dt =
// Open Data Table: semiconductor capability.jmp
// → Data Table( "semiconductor capability" )
Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
colNames = dt << get column names( string, continuous );
group1 = {};
group2 = {};
For Each( {name}, colNames,
/*If(
Left( name, 9 ) == "ChamberID",
Insert Into( group1, name ),
Left( name, 8 ) == "RecipeID",
Insert Into( group2, name )
)*/
If(
Left( name, 3 ) == "NPN",
Insert Into( group1, name ),
Left( name, 3 ) == "PNP",
Insert Into( group2, name )
)
);
dt << group columns( "NPN", group1);
dt << group columns( "PNP", group2);Re: JSL: すべての列を共通の初期項でグループ化するにはどうすればよいですか?これを行うには多くの方法があります。 以下のスクリプトで示しているように、類似したものを使用しました(連想配列を使用)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp");
aa_groups = ["DELL" => {}, "DELW" => {}, "RCON" => {}];
col_names = dt << Get Column Names("String");
For Each({col_name}, col_names,
For Each({{key, value}}, aa_groups,
If(Starts With(col_name, key ||"_"), // "_" is used as additional separator
Insert Into(aa_groups[key], col_name);
Break();
)
);
);
For Each({{groupname, groupcols}}, aa_groups,
dt << Group Columns(groupname, groupcols);
);
もっとダイナミックにする必要がある場合は、それを行うこともできます
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Probe.jmp");
aa_groups = Associative Array();
col_names = dt << Get Column Names("String");
For Each({col_name}, col_names,
nameparts = Words(col_name, "_"); // depending ion your columns, this might need to change
If(N Items(nameparts) > 1,
If(!Contains(aa_groups, nameparts[1]),
aa_groups[nameparts[1]] = {}; // add new key
);
Insert Into(aa_groups[nameparts[1]], col_name);
);
);
For Each({{groupname, groupcols}}, aa_groups,
dt << Group Columns(groupname, groupcols);
);
どちらも考え方は同じです。 キーが列グループ名、値がそのグループに属する列のリストである連想配列を作成します。