以下のようにデータテーブルを設定している場合
| Col1 | Col2 | Col3 | Col4 |
| 1 | a | e | 20 |
| 2 | b | f | 21 |
| 3 | c | g | 22 |
および新しい列名の文字列のリスト
NewCols = {"Data1"、 "Data2"、 "Data3"、 "Data4"}
次のデータテーブルになるように、リストNew Colsを使用してデータテーブルの列の名前を一度に変更するスクリプトを作成するにはどうすればよいですか?
| データ1 | データ2 | データ3 | データ4 |
| 1 | a | e | 20 |
| 2 | b | f | 21 |
| 3 | c | g | 22 |
列名を変更する単一のステートメントを認識していません。以下はそのような状況で私が使用する方法です。
Names Default To Here( 1 );
dt = New Table( "Example",
Add Rows( 3 ),
New Column( "Col1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Selected,
Set Values( [1, 2, 3] )
),
New Column( "Col2", Character( 16 ), "Nominal", Set Values( {"a", "b", "c"} ) ),
New Column( "Col3", Character( 16 ), "Nominal", Set Values( {"e", "f", "g"} ) ),
New Column( "Col4",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [20, 21, 22] )
)
);
NewCols = {"Data1", "Data2", "Data3", "Data4"};
For( i = 1, i <= N Items( NewCols ), i++,
Column( dt, i ) << set name( NewCols[i] )
);こんにちは@ user8421 、
まだ適用できない場合がありますが、JMP 16(およびそれ以降)では、改良されたFor Each()jslコマンドを使用して、これをすばやく実行できます。
dt = Current Data Table();
NewCols = { "Data1", "Data2", "Data3", "Data4"}
For Each( {value, index}, NewCols, Column( dt, index ) << set name( value ) );
これがお役に立てば幸いです。
@ジュリアン