如何根据列引用的变量列表编写聚合列脚本我有一个需要自动聚合的列列表。 目前,我正在尝试的是这样的事情,但没有产生任何结果。
cols = {:col1, :col2, :col3}
Eval(Eval Expr(
dt << New Column(
Formula(Minimum(Expr(cols))
)
)我还尝试过交互式生成并保存列公式。 它有效,但给了我
Minimum(:col1, :col2, :col3)
我不知道如何在 JSL 中重新创建。
分享和交流结果回复:如何从列引用的变量列表编写聚合列脚本您可以尝试以下两种方法:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
cols = dt << Get Column Names( "String" );
col list = {};
For Each( {col}, cols,
If( Ends With( col, "t" ), Insert Into( col list, As Name( col ) ) )
);
Eval( Eval Expr(
dt << New Column( "NEW_COL", "Numeric", <<SET formula=""></SET>Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
cols = dt << Get Column Names( "String" );
col list = Expr( Min() );
For Each( {col}, cols,
If( Ends With( col, "t" ), Insert Into( col list, As Name( col ) ) )
);
Eval( Eval Expr(
dt << New Column( "NEW_COL", "Numeric", <<SET formula=""></SET>回复:如何从列引用的变量列表编写聚合列脚本我猜测您的初始列名称列表是什么样子,但如果它只是一个不带引号的列名称列表,下面的脚本是处理它的唯一方法的示例
Names Default To Here( 1 );
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "/C:/Program Files/SAS/JMPPRO/15/Samples/Data/Big Class.jmp" );
colNames = dt << get column names;
theList = {};
For Each( {col}, colNames,
Show( col );
If( As Column( col ) << get data type == "Numeric",
Insert Into( theList, As Column( col ) << get name )
);
);
theString = Concat Items( theList, ",:" );
Eval( Parse( "dt << new column(\!"test\!",formula(minimum(:" || thestring || ")));" ) );回复:如何从列引用的变量列表编写聚合列脚本我的实际列表是通过基于用户输入的正则表达式匹配来定义的。 该脚本循环访问数据表的列名列表,并将匹配的列插入到列表中。
For Each ({col}, colNames,
If (condition... Insert Into(list, :Column(col))
)我尝试将语法更改为:(列(列))但这导致了一份缺失物品的清单,而不是我之前得到的物品( {列(col1),列(col2),...} )。 同样适用于作为列(col) 。
我正在使用 JMP 16。
回复:如何从列引用的变量列表编写聚合列脚本请检查您的列表定义并确保在每个列名称前面指定“:”。
您使用什么版本的 JMP?
回复:如何从列引用的变量列表编写聚合列脚本感谢您及时的回复! 我尝试了这个,但似乎没有解决列公式(如 Maximum(Eval(cols)) )。
回复:如何从列引用的变量列表编写聚合列脚本你好,
试试这个语法:
Names default to Here (1);
dt = Current Data Table ();
cols = {:col1, :col2, :col3};
dt << New Column("TEST", numerical, continuous, << Formula(Minimum(Eval(cols))));
最好的,
TS
回复:如何从列引用的变量列表编写聚合列脚本这可能会给一些想法在公式中使用列列表
查看更多...