Scripting 获取JMP脚本中的列范围

Scripting 获取JMP脚本中的列范围,scripting,sas-jmp,Scripting,Sas Jmp,我刚刚开始编写JMP脚本,在没有手动循环的情况下,很难找到在一系列列上执行函数的语法。我试图对一行执行简单的sum(),但想跳过前5列。 我尝试过下面代码的各种安排 dt1=open(); colSize=ncol(dt1); Show(colSize); dt1 << new column("is_empty",numeric, formula(isMissing(sum(/*column(5):colSize */)))),EvalFormula); dt1=open(); c

我刚刚开始编写JMP脚本,在没有手动循环的情况下,很难找到在一系列列上执行函数的语法。我试图对一行执行简单的sum(),但想跳过前5列。 我尝试过下面代码的各种安排

dt1=open();
colSize=ncol(dt1);
Show(colSize);
dt1 << new column("is_empty",numeric, formula(isMissing(sum(/*column(5):colSize */)))),EvalFormula);
dt1=open();
colSize=ncol(dt1);
显示(colSize);

dt1您可以使用
求和
来完成,这只是从手动循环中删除的一个步骤:

Local({c}, Summation( c = 6,  N Col(), Column( c )[Row()] ));
或者,您可以使用
Get Column Names
获取所有列,然后使用范围下标获取所需的子集,然后再将其传递给
Sum

Sum( (Current Data Table() << Get Column Names())[6 :: N Col()] );

Sum((当前数据表()您可以使用
Summation
进行此操作,这只是从手动循环中删除的一个步骤:

Local({c}, Summation( c = 6,  N Col(), Column( c )[Row()] ));
或者,您可以使用
Get Column Names
获取所有列,然后使用范围下标获取所需的子集,然后再将其传递给
Sum

Sum( (Current Data Table() << Get Column Names())[6 :: N Col()] );
Sum((当前数据表)()