使用列表参数移动选定的列()如果我有一个包含五列的表:
| 第 5 栏 | 第 3 栏 | 第 2 栏 | 第 1 列 | 第 4 列 |
| 数据 | 数据 | 数据 | 数据 | 数据 |
我执行这个:
dt = Current Data Table();
dt << Move Selected Columns({"Column 1", "Column 2", "Column 3", "Column 4", "Column 5"}, To first)然后我得到这个:
| 第 1 列 | 第 2 栏 | 第 3 栏 | 第 4 列 | 第 5 栏 |
| 数据 | 数据 | 数据 | 数据 | 数据 |
但是如果我执行这个:
dt= Current Data Table();
list = {"Column 1", "Column 2", "Column 3", "Column 4", "Column 5"};
dt << Move Selected Columns( list, To first); 它因“无法识别的关键字”错误而失败。
我需要能够参数化列列表,就像在第二个版本中一样。 我怎样才能使类似第二个版本的东西工作?
回复:使用列表参数移动选定的列()我很高兴听到找到解决方法。 同时,我们将此问题报告给开发部门,JMP 15(今年晚些时候可用)已更新,以便自动进行评估。 谢谢!
回复:使用列表参数移动选定的列()这只是另一种方法,仅供参考。
您也可以使用表达式来执行此操作。Eval Expr() 将每个 Expr() 替换为其值(名称表达式),外部 Eval() 函数执行命令。
dt= Current Data Table();
list = {"Column 1", "Column 2", "Column 3", "Column 4", "Column 5"};
Eval( Eval Expr(dt << Move Selected Columns( Expr(list), To first)) ); 回复:使用列表参数移动选定的列()谢谢,这对我有用!回复:使用列表参数移动选定的列()我尝试了各种风格的 as list()、listeval()、expr、evalexpr() 等,但都无济于事。不得不求助于 eval(parse()):
dt = current data table();
alist = {"Column 4", "Column 3", "Column 2", "Column 1"};
clist = char(alist);
col_expr = evalinsert("dt << move selected columns(^clist^, to first)");
eval(parse(col_expr));