使用列表参数移动选定的列()如果我有一个包含五列的表:
| 第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、evaexpr() 等,但均无济于事。不得不求助于 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));