你好。 我正在尋找一種腳本方法來將表中的列名稱更改為列表中包含的名稱。 我在想類似的東西:dt << Set Column Names(newcolname_lis)? 此命令會將表中第 i 列的名稱更改為 newcolname_lis 中的第 i 個項目,從第 1 列開始。
提出此要求的原因:
我有可以包含 >20k 列的表。 我需要更改列名以與其餘數據表合併。 使用 For 循環更改名稱需要幾分鐘時間。 理想情況下,這可以在幾秒鐘內使用命令完成。
這是我之前發布的問題的跟進:
https://community.jmp.com/t5/Discussions/Set-column-names-more-efficiently/mp/311439#M56450
謝謝。
你好,
我有一個函數能夠根據字符串模式重命名列。 你也許可以嘗試適應它。
function_RenameCol = Function({ dt, strpattern, strreplace},
lstCol = dt << Get column names( string );
For( icol = 1, icol <= Nitems(lstCol), icol++,
if (Contains( lstCol[icol],strpattern) >= 1,
newname = Munger(lstCol[icol],0,strpattern,strreplace);
Column( dt, icol ) << Set Name( newname );
);
);
);