JSL 用于在计算后评估公差区间 USL 和 LSL你好,
所以我想编写一个脚本来计算一列数据的覆盖率为 99% 的容差区间,alpha = 0.95。
完成此操作后,我想访问/评估 USL 和 LSL 以用于隐藏/排除超出这些限制的值。
我这样做的原因是我有两列数据堆叠在一起,并且我想生成并排的箱线图。
但是,当我生成它们时,箱形图中存在主要异常值,导致轴缩放不良。 这些主要异常值中只会有一小部分,所以我只要摆脱它们就没有问题
我对 JMP 还很陌生,因此非常感谢您的帮助。 如果您认为有更好/更简单的方法来实现这一目标,那就太好了。
Re: JSL 用于在计算后评估公差区间 USL 和 LSL谢谢你! 非常感谢您的帮助! 很抱歉延迟接受答案,直到今天我才回去写剧本。Re: JSL 用于在计算后评估公差区间 USL 和 LSL伊恩比我快。 下面是堆叠数据的脚本。
正如 Ian 所暗示的,您需要了解更多 JSL 来从表和报告中选择和获取值。要为下一个脚本做好准备,您应该阅读“帮助”>“书籍”>“脚本指南”章节“脚本平台”和“显示树”。 这将帮助您了解 JMP 报告的嵌套结构并学习导航、引用和获取的语法。
请注意,Ian 的脚本清空了值。 该脚本保留它们的值,但将它们排除在分析之外。
Names default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt_stck = dt << Stack(
columns( :height, :weight ),
Source Label Column( "Var" ),
Stacked Data Column( "Data" )
);
close(dt,NoSave);
obj = Distribution( Column( :Data ), By(:Var) );
//using a lower proportion, .80, to screen something
obj << Tolerance Interval( Alpha( 0.95 ), Proportion( 0.8 ) );
tol_dt = report(obj[1])[OutlineBox(2)]["Tolerance Intervals"][TableBox(1)]<<MAKE combined="" data="https://community.jmp.com/" table=""> vhi) ) << hide and exclude(1);
dt_stck << clear select;
);
nw = New Window("Custom Display",
VListBox(
onew = dt_stck << Oneway( Y(:Data), X(:Var)),
text box(),
dbb = tol_dt <<NEW data="https://community.jmp.com/" box=""></NEW></MAKE>Re: JSL 用于在计算后评估公差区间 USL 和 LSL好的丹尼。 有时您可以直接获取所需的值,有时您需要访问报表层才能获取它们(尝试“帮助>书籍>脚本指南”)。
这段代码应该可以帮助您开始:
NamesDefaultToHere(1);
// Do the Distribution
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dist = dt << Distribution( Column( :Height ) );
// Add tolerance intervals (search for the latter using 'Help > Scripting Guide')
dist << Tolerance Interval(Alpha( 0.95 ), Proportion( 0.85 ));
// Get the report layer
distRep = dist << Report;
// Dig out the required values (do 'Show Tree Structure' to see how the report is made up)
lt = distRep[NumberColBox(5)] << get;
ut = distRep[NumberColBox(6)] << get;
// Set extreme values to missing
vals = Column(dt, "Height") << getValues;
vals[Loc(vals < lt[1] | vals > ut[1] )] = .;
Column(dt, "Height") << setValues(vals);
Re: JSL 用于在计算后评估公差区间 USL 和 LSL嗨伊恩,谢谢您的回复。 我知道如何编写生成分布报告并计算容差区间的脚本。 这是我坚持的下一部分。 当我让 JMP 生成公差区间的脚本时,它给出的结果是:
Distribution(
Continuous Distribution(
Column( :Data ),
Tolerance Interval( Alpha( 0.95 ), Proportion( 0.99 ) )
)
)
所以你可以看到,此时在我的脚本中我不知道我的 USL 和 LSL。我需要我的脚本以某种方式读取刚刚计算的容差区间的 USL/LSL,然后相应地排除/删除行。
Re: JSL 用于在计算后评估公差区间 USL 和 LSL不,我想使用公差限制作为规格限制。
Re: JSL 用于在计算后评估公差区间 USL 和 LSL即使您想要编写某些内容的脚本,最好手动完成一次,特别是因为 JMP 通常会生成您可以使用的代码。
考虑到这一点,请看一下这里查看如何通过“分析 > 分布”获取公差区间。 获得这些值后,您可以使用“行 > 行选择 > 选择位置”等。 。 .',然后是“行 > 删除行”。
Re: JSL 用于在计算后评估公差区间 USL 和 LSL公差极限和规格极限是否不同?