在 JSL 脚本中计算行子集的 Col Mean ()?JMP 社区您好,
JSL 中计算定义变量的列平均值(或其他统计数据)的正确语法是什么子集行数? 在数据表中,我可以只使用公式“Col Mean (:Data Column, :Grouping Column)”,但在 JSL 脚本中,这似乎不是正确的用法。
值得注意的是,我正在考虑通过使用“For every row”结构来使用暴力,但这在评估 200 多列和 1000 行时似乎效率很低。
感谢您的帮助。
TS
回复:在 JSL 脚本中计算行子集的 Col Mean ()?我相信最简单、最有效的方法是使用
表格==>总结
这将非常快速地创建一个数据表,您可以从中获取 JSL 的统计信息,或者如果您需要将统计信息放回到原始数据表中,只需进行简单的匹配更新即可。处理 200 列和 1000 行根本不是问题。下面是一个简单的示例,将说明如何执行此操作。
names default to here(1);
dt=Open("$SAMPLE_DATA/semiconductor capability.jmp");
colNamesLIst = dt << get column names(continuous);
dtStats = dt << Summary(invisible,
Group( :SITE ),
Mean( colNamesList ),
Freq( "None" ),
Weight( "None" ),
Link to original data table(0)
);
dt << Update(
With( dtStats ),
Match Columns( :SITE = :SITE )
);
close( dtStats, nosave );回复:在 JSL 脚本中计算行子集的 Col Mean ()?JMP 社区您好,
这是我使用“For Each Row”结构得出的结果:
Names Default to Here (1);
dt = Current Data Table ();
ALL_MEAN = Col Mean (:DATA);
MAX_MEAN = -1000;
For Each Row (
if (MAX_MEAN < Col Mean(:DATA, :GROUP,:SGROUP), MAX_MEAN = Col Mean(:DATA, :GROUP,:SGROUP))
);
Show (ALL_MEAN);
Show (MAX_MEAN);
有什么想法可以提高效率吗?
谢谢,
TS