你好。 我正在寻找一种脚本方法来将表中的列名称更改为列表中包含的名称。 我在想类似的东西: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 );
);
);
);