안녕,
JMP에서 3개 이상의 표준 편차를 감지하는 방법이 있습니까?
"이상값 탐색" 옵션과 "Levey Jennings" 관리 차트에 대해 잘 알고 있습니다. 하지만 3SD 이상의 이상값을 감지하는 다른 방법이 있습니까?
감사해요,
네
안녕,
정말 감사합니다. 어제 사용하면서 알았습니다.
베스트,
네
값 > 3 SD를 표시해야 하는 두 번째 공식에는 오류가 포함되어 있습니다.따라서 작동하지 않습니다. *를 "*"로 바꿔야 합니다.
따라서 값을 얻기 위한 올바른 공식은 다음과 같습니다.
If( :Data > Col Mean( :Data ) + Col Std Dev( :Data ) * 3,
:데이터,
.
)
에 대한 간단한 부록 @토마스1 응답. 심각한 이상치가 있는 경우 Col Std Dev는 상당히 클 수 있고 평균을 편향시킬 수 있습니다.
대안은 상위 선별 한계에 대해 중앙값 + k* 유사 시그마를 사용하고 하위 선별 한계에서 중앙값 - k* 유사 시그마를 사용하는 것입니다.
다음은 weight라는 열에 대한 열 수식입니다. 원시 데이터의 경우 때때로 0.85 및 0.15 분위수를 사용하여 ps의 승수로 6을 사용하여 의사 시그마를 계산합니다.
Local( {ps},
ps = (Col Quantile( :weight, 0.75 ) - Col Quantile( :weight, 0.25 )) / 1.349;
If(
:weight > Col Quantile( :weight, 0.5 ) + 5 * ps, 1,
:weight < Col Quantile( :weight, 0.5 ) - 5 * ps, -1,
0
);
)스크립팅하는 경우 배포 플랫폼은 강력한 평균 및 강력한 표준 편차를 계산합니다.다음은 이러한 값을 가져오는 간단한 스크립트입니다.
Names Default To Here(1);
dt = Open( "$sample_data/Big class.jmp");
dist = dt << Distribution(
Continuous Distribution(
Column( :height ),
Quantiles( 0 ),
Horizontal Layout( 1 ),
Histogram( 0 ),
Vertical( 0 ),
Outlier Box Plot( 0 ),
Customize Summary Statistics(
Trimmed Mean( 1 ),
Robust Mean( 1 ),
Robust Std Dev( 1 ),
Set Alpha Level( 0.05 )
)
)
);
snames = report(dist)["Summary Statistics"][TableBox(1)][StringColBox(1)] << get;
svalues= report(dist)["Summary Statistics"][TableBox(1)][NumberColBox(1)] << get;
stats = Associative Array(snames, svalues); //cretea a keyed list
r_xb = stats["Robust Mean"];
r_sd = stats["Robust Standard Deviation"];
show(r_xb, r_sd);
//now use r_xb + <4|5|6> * r_sd and r_xb - <4|5|6> * r_sd for screening limits
@NeF 썼다:
안녕,
JMP에서 3개 이상의 표준 편차를 감지하는 방법이 있습니까?
"이상값 탐색" 옵션과 "Levey Jennings" 관리 차트에 대해 잘 알고 있습니다. 하지만 3SD 이상의 이상값을 감지하는 다른 방법이 있습니까?
감사해요,
네
이 문제는 수식으로 새 수식 열을 만들어 해결할 수 있습니다.
If( :Data > Col Mean( :Data ) + Col Std Dev( :Data ) * 3,
1,
0
)
데이터 열은 소스 열입니다.
값 > 3SD를 원하는 경우 공식은 다음과 같습니다.
If( :Data > Col Mean( :Data ) + Col Std Dev( :Data ) * 3,
:데이터,
"."
)