スクリプト - 最適な分布を選択し、機能パラメーターを収集するにはどうすればよいですか?次のことを行うスクリプトを作成したいと考えています。
1) データセットを取得します (一度に 1 列)
2) すべての分布に対して連続フィットを実行します。
3) 最適な適合を見つけ、仕様限界を適用し、能力パラメーター (特に CpK) を分析します。
4) CpK (およびおそらく他のもの) をテーブルに出力します。
これを手動で行う方法は知っていますが、手動で実行してスクリプトを保存した後でも、スクリプトは最初に実行したのと同じ分析を再生成しません。 特定の分布 (最上位の三角形ではなく、Normal 3 の横にある赤い三角形) 内で仕様制限を設定すると、それはスクリプト内で完全に失われます。 最上位から設定すると情報が保存されますが、この分析を実行するデータセットは 50 ~ 100 個あり、それらはさまざまな分布になります。 最適な適合性を見つけて、この分析を行うためのスクリプトが必要です。
以下の例 1 は、私が作業に取り掛かったコード スニペットです (まだテーブルには出力されていませんが、少なくとも適切な分布と分析が得られています)。ただし、データが正規 3 混合であることを知っている必要があります。 例 2 を使用すると、デフォルトで正規分布になりますが、これは間違っています。 パラメーターとして最適を評価する方法を理解できれば、switch 関数またはそれに相当する関数で使用して、各ディストリビューションに必要な構文を設定できます。
// Example 1 that gives meaningful results, but requires me to know the distribution
Distribution(
Column("Test Data"),
Fit Distribution (Normal Mixtures( Spec Limits( LSL( -1 ), USL( 1 ) ), Clusters( 3 ) )
)
);
// Example 2 gives garbage because it assumes the distribution is normal, and it's never normal
Distribution(
Column("Test Data"),
Fit Distribution ("All"), Capability Analysis ( LSL( -1 ), USL( 1 ) )
);テーブルへの出力に関する他のヘルプも素晴らしいでしょう。 これは私にとって初めての JMP スクリプトであり、スクリプト ガイドで明確な例を見つけるのに苦労しています。
Re: スクリプト - 最適な分布を選択し、機能パラメーターを収集するにはどうすればよいですか?私もスティーブンの警告に同意します。
このような分析をスクリプトを使用して手動で実行する煩わしさを軽減したいという要望は理解できます。 スクリプトは、JMP アクティビティを自動化する完璧な方法です。
しかし、すべての分布モデルを一度に当てはめてランク付けする機能は、探索的な分析。 このような探索は、プロセス開発の初期段階で、プロセスの動作についてほとんどわかっていないときに実施することがあります。 一方、能力調査の実施は、確認的なプロセス開発の後半で、多くのことがわかっていて、プロセスについて何も変わっていないときに実行される分析。 たとえば、適切な能力分析を行うには、少なくともフェーズ I を通じてプロセス制御が実証されている必要があります。
本当に自動化することはできません主観的な判断使用時の分散モデルについて客観的な方法。 あるいは、「できるからといって、そうすべきとは限りません」と言うべきかもしれません。
Re: スクリプト - 最適な分布を選択し、機能パラメーターを収集するにはどうすればよいですか?数値的に最適な適合が常に論理的に最適であるとは限らないため、最適な適合を使用する場合には注意が必要です。 私の経験では、分散プラットフォームが過剰に適合していることがわかりました。たとえば、正規 3 混合が最適であると示唆されていますが、データの生成方法の理論に基づいて、対数正規適合が最も適切であることがわかりました。
これにはある程度の主観的な評価が必要です。上記の例では、より特殊な/複雑な適合の AICc スコアはほんのわずかに低いだけでした。 多くの列がデータの生成方法について同じメカニズムを共有している場合は、すべての異なる列のランクを組み合わせて、それらすべての列に最適なランキングを選択することが賢明な場合があります。
各列のベストフィットテーブルを保存し、それらをランク付けし、比較して、列全体で最適なものを抽出する必要があるため、これにはもう少し多くの JSL が必要になります。Re: スクリプト - 最適な分布を選択し、機能パラメーターを収集するにはどうすればよいですか?助けてくれてありがとう。しかし、工程能力分析は依然としてデフォルトで正規分布になっています。 ただし、スクリプトを改善する方法について、他のコーディングのアイデアもいくつか教えていただきました。 「アウトラインボックス」コマンドはとても便利です。
「アウトライン ボックス」を使用して、分布の比較テーブルから上位適合を解析し、その名前 (標準 3 混合物) をキーオフして、その分布に必要な工程能力分析呼び出しに必要な文字列を作成することができました。 これはエレガントではありませんが、今のところうまく機能しています。
ありがとう。
Re: スクリプト - 最適な分布を選択し、機能パラメーターを収集するにはどうすればよいですか?以下に、良いスタートを切るためのスクリプトを示します。 単一の列に対して必要なタスクを実行します
names default to here(1);
dt=open("$SAMPLE_DATA\big class.jmp");
// Set the limits for the target column
dt:height << set property("spec limits",{LSL(57),USL(68),show limits(1)});
// Run the Distribution Platform
dis=Distribution(
Continuous Distribution( Column( :height ), Fit Distribution( "All" ) ),
capability analysis(1)
);
// Point to the first capability analysis and create a data table from it
dtCpk = report(dis)[outline box(9)][1][3][1]<<MAKE data="https://community.jmp.com/" table=""></MAKE>