在变异性图表中使用列名称列表创建多个变异性图表时,JMP 会生成类似于以下代码的脚本示例,其中包含多个 Y 响应列作为逗号分隔列表。
变异图(
Y(:列1,:列2),
模型(“主效应”),
X(:单位)
);
如果我有一个列列表,我想为其生成图表:
ListofColumnNames= dt << 获取列名();
列名列表= {Col1, Col2, ...}
有没有办法在线扩展此列表以创建与 JMP 创建的逗号分隔列表基本相同的列表?
变异图(
Y( Column(ListofColumnNames)), // 我知道这种语法不起作用,但传达了意图。
模型(“主效应”),
X(:单位)
);
我知道这可以使用 For 循环来完成
Y( 列(列名列表[i])),
但想知道是否有一种方法可以避免 For 循环并通过传递整个列表(以提高速度)来仅调用一次变异性图表。
自动化和脚本编写回复:在变异性图表中使用列名称列表将 Column() 函数更改为 Eval() 函数,它应该可以正常工作。这是一个工作示例:
names default to here(1);
dt=
// Open Data Table: semiconductor capability.jmp
// → Data Table( "semiconductor capability" )
Open( "$SAMPLE_DATA/semiconductor capability.jmp" );
ListofColumnNames = dt << Get Column Names();
remove from(ListofColumnNames, 1, 4 );
// Just so there arn't so many columns to analyze
remove from(ListofColumnNames, 10, 118 );
Variability Chart(
Y( eval( ListofColumnNames ) ), // I know this syntax does not work, but conveys the intent.
Model( "Main Effect" ),
X( :lot_id )
);
回复:在变异性图表中使用列名称列表谢谢。 这完全符合我的要求。