创建规格限制你好,
我正在尝试使用 jmp 接口或 jsl 创建规格限制。 我正在尝试为没有 USL 或 LSL 的不同列创建规格限制。 请帮忙。感谢。
基础数据分析和建模质量和工艺工程回复:创建规格限制您研究过限制管理器吗?
分析=>质量和流程=>限制经理
回复:创建规格限制嗨吉姆,
我已经看过它,但据我所知,这个工具是接受限制并将其应用到列。 我想做的是根据 sigma 和我提供的平均值计算 USL 或 LSL。 或者,如果有一个工具,我可以在其中指定该列的西格玛值,然后 JMP 生成规格限。 你遇到过这样的事情吗?谢谢吉姆。
回复:创建规格限制规格限值通常不是计算限值。它们是根据设计规范或工具限制等设置的。
但是,这里有一个简单的脚本,它将使用 3 西格玛限制为数据表中的所有连续列设置规格限制
Names Default To Here( 1 );
dt = Current Data Table();
colNames = dt << get column names( string, continuous );
For Each( {col}, colNames,
theMean = Col Mean( As Column( dt, col ) );
theSTD = Col Std Dev( As Column( dt, col ) );
Eval(
Substitute(
Expr(
Column( dt, col ) << set property(
"Spec Limits",
{LSL( _LSL_ ), Target( _Target_ ), USL( _USL_ ), Show Limits( 1 )}
)
),
Expr( _LSL_ ), theMean - 3 * theSTD,
Expr( _Target_ ), theMean,
Expr( _USL_ ), theMean + 3 * theSTD
)
);
);回复:创建规格限制当然! 要使用 JSL 在 JMP 中创建规格限值,请打开数据表,选择所需的列,然后使用分布平台和规格限值选项来设置限值。
回复:创建规格限制是否可以为不同的步骤设置不同的规格限制,而无需将所有步骤分成每一列?
回复:创建规格限制目前,每列只允许一组规格限制。
但是,使用 JSL,可以将多个规格限制编入一个脚本中,该脚本可以循环遍历数据表,一次拉出一个子组,应用子集的规格限制,然后运行分析。这是一个简单的例子。

Names Default To Here( 1 );
dt =
// Open Data Table: Big Class.jmp
// → Data Table( "Big Class" )
Open( "$SAMPLE_DATA/Big Class.jmp" );
dtLimits = New Table( "Limits",
New Column( "Group", character, values( {"F", "M"} ) ),
New Column( "USL", values( {66, 70} ) ),
New Column( "Target", values( {61, 64} ) ),
New Column( "LSL", values( {52, 51} ) )
);
groups = Associative Array( dt:sex ) << get keys;
nw = New Window( "Distributions", hlb = H List Box() );
For Each( {level}, groups,
dt << select where( :sex == level );
dtSub = dt << subset( selected columns( 0 ), selecte rows( 1 ), output table( level ), invisible );
theRow = (dtLimits << get rows where( :group == level ))[1];
Eval(
Eval Expr(
dtSub:height << set property(
"spec limits",
{LSL( Expr( dtLimits:LSL[theRow] ) ), USL( Expr( dtLimits:USL[theRow] ) ),
Target( Expr( dtLimits:Target[theRow] ) ), Show Limits( 1 )}
)
)
);
hlb << append(
dis = dtSub << Distribution( Continuous Distribution( Column( :height ), Process Capability( 0 ) ) );
Report( dis )[Outline Box( 2 )] << set title( "Height=" || level )
;
);
);