いくつかの要因が条件付きとなる実験を設計しようとしているのですが、カスタムデザインを使って適切に処理できるのか、それとも手動で設計を構築する必要があるのかが分かりません。
私には、基準条件が1 (最大値でもある)である因子X1が1つあります。X1は基準条件より小さい値にしか変更できませんが、基準値に固定しておくことも興味深いケースの一つです。
他の2つの要素については、構造は条件付きである。
-
X2はオフまたはONのいずれかになります
- OFFの場合、レベル/強度はありません。
- ONの場合、連続範囲となります。
-
X3は存在しない場合も存在する場合もある
- 記載がない場合、投与量/強度は存在しません。
- 存在する場合、連続的な範囲を持つ
したがって、X2とX3は単純な連続因子ではありません。なぜなら、それらの連続値は、対応する因子がアクティブ/存在する場合にのみ意味を持つからです。
私の目的は以下の点を理解することです。
- X2および/またはX3が存在する場合と存在しない場合の影響
- X2および/またはX3が活性化しているときに、それらのレベル/強度を変化させた場合の影響
- これらの効果は、X1の異なる値でどのように振る舞うか
- X1、X2、X3の間に相互作用があるかどうか
私が検討しているアイデアの一つは、 X2とX3を離散的な数値因子として扱うことです。0はOFF/不在を表し、0以外の値はアクティブな連続範囲を表します。分析においては、多項式の自動的な符号化/センタリングを避け、数値レベルをより直接的に解釈できるようにします。
しかし、このアプローチには欠点があることも理解しています。特に、 0から最初の非ゼロレベルへのジャンプは、次の2つの効果を併せ持つ可能性があります。
- 要素をON/存在に切り替えた効果
- 最も低い有効強度/投与量に移行した場合の効果
そのため、活性化/存在効果と強度/投与量効果を明確に分離できない可能性があります。また、特にX1の値によってX2とX3の挙動が異なる場合、相互作用項の解釈が難しくなる可能性もあります。
現在私が試みている2つ目のアプローチは、X2とX3をカテゴリカルな活性化因子と離散的な数値レベル因子の両方を用いて表現することです。
- X2については、1つのカテゴリ別オフ/オン因子と1つの離散的な数値レベル因子を用いる。
- X3については、カテゴリカルな欠如/存在因子1つと離散的な数値レベル因子1つを使用する。
DOE(
Custom Design,
{
Add Response( Maximize, "Y", ., ., . ),
Add Factor( Continuous, -1, 1, "X1_Level", 0 ),
Add Factor( Discrete Numeric, {0, 1, 2, 3}, "X2_Level", 0 ),
Add Factor( Categorical, {"Off", "On"}, "X2_Status", 0 ),
Add Factor( Discrete Numeric, {0, 1, 2, 3}, "X3_Level", 0 ),
Add Factor( Categorical, {"Absent", "Present"}, "X3_Status", 0 ),
Set Random Seed( 2055292721 ),
Number of Starts( 4702 ),
Add Term( {1, 0} ),
Add Term( {1, 1} ),
Add Term( {2, 1} ),
Add Potential Term( {2, 2} ),
Add Term( {3, 1} ),
Add Term( {4, 1} ),
Add Potential Term( {4, 2} ),
Add Term( {5, 1} ),
Add Term( {1, 1}, {2, 1} ),
Add Term( {1, 1}, {4, 1} ),
Add Term( {2, 1}, {4, 1} ),
Set Sample Size( 12 ),
Disallowed Combinations(
("X2_Status"n == "Off" & "X2_Level"n > 0) |
("X2_Status"n == "On" & "X2_Level"n == 0) |
("X3_Status"n == "Absent" & "X3_Level"n > 0) |
("X3_Status"n == "Present" & "X3_Level"n == 0)
),
Simulate Responses( 0 ),
Save X Matrix( 0 ),
Make Design
}
);
私が懸念しているのは、数値レベルですでにOFF/ONまたは不在/存在の状態が示されているため、カテゴリカルな状態因子が冗長になる可能性があるということです。したがって、この設定で活性化効果とレベル/強度効果を真に分離できるのか、あるいはモデルの解釈を困難にする多重共線性/交絡が生じるのか、確信が持てません。
私の質問は以下のとおりです。
- 統計的に見て、地位要因と離散的な数値レベル要因の両方を含めることは妥当でしょうか?
- この設定で、活性化効果とレベル/強度効果を意味のある形で分離できるだろうか?
- Would it be better to use only the discrete numeric factors, with
0 = Off/Absent and 1–3 = active levels?
- あるいは、JMPカスタムデザインでこのような条件付き要素構造を処理するより良い方法はありますか?
こんにちは、 @JunaidM さん。
カテゴリカルな要因は不要です。なぜなら、X2のレベルが0であるということは、この要因が「OFF」であることを既に意味しているからです(X3についても同様です)。
したがって、これらの要素を追加して設計を作成すると、設計生成中に冗長な情報(および共線性)が生成されるだけで、(ステータスとレベルの要素間の線形依存関係により、モデリング中に特異点の詳細が生成されるだけです)。
共有いただいた設計生成スクリプトを見ると、この冗長性(およびX2とX2ステータス間の依存関係)のために、JMPの設計評価プラットフォームでファクターXi_Statusがモデルから削除され、離散数値と数値ファクターの項のみが残っていることがわかります。

ですから、私はより直接的な設計生成オプションを選択するでしょう。
この設計の目的は何ですか?X2とX3について、これほど多くのレベルをテストすることに本当に興味がありますか?2つのレベル(例えば、低レベル:不在=0、高レベル:存在=3)を持つスクリーニング/D最適設計で十分ではないでしょうか?あるいは、単純な不在/存在因子レベルの設定を避け、二次効果を分析するために3つのレベルを設定するのはどうでしょうか?
これらのレベルを本当に強制したい場合は、以下の方法でデザインを作成できます。
- X1 連続因子(-1~1)
- X2は、0、1、2、3の値を持つ離散数値、または適切なモデル項を持つ連続数値として、十分な数のレベルを持つことができます。実際に4つのレベルをテストしたい場合は、X2の項を5乗で指定すると、設計においてこの因子に4つのレベルが作成されます。詳細については、 DoEの力レベルを参照してください。
- X3は、0、1、2、3の値を持つ離散数値、または十分な数のレベルを持つ適切なモデル項を持つ連続数値です。
活性化効果とレベル/強度効果を分離したい場合は、分析において、X2 = 0 の場合の平均応答と、X2 = 1、2、または 3 の場合の平均応答を、これら 2 つの条件での応答を平均することで評価できます。より詳細で粒度の高い応答が既に得られている場合は、マクロビューと詳細ビューの 2 種類の分析と結果を提供できるため、分析で情報を要約するのがはるかに容易になります。
この回答がお役に立てば幸いです。
こんにちは、 @Victor_G さん。
詳細なご回答ありがとうございます。大変参考になりました。
Just to clarify one point: in the script I shared, I had removed the X2_Status and <STRONG>X3_ステータス</STRONG> terms myself from the model terms because I was already concerned that they may be redundant. But your explanation confirms the concern more clearly: since X2 = 0 already implies OFF and <STRONG>X2 ></STRONG> 0 implies ON, adding a separate status factor would introduce redundant information and potential collinearity.
So, if I understand correctly, the more direct approach (Option 1) does make sense.</CODE></P>
<P>Based on your response, I am also thinking that three discrete numeric levels may be sufficient instead of four. For example, <CODE>0, lowest practical active level, and highest practical active level. This may be more appropriate because the distance between 0 → lowest active level and lowest → highest active level is not the same.
あなたの提案に従って、これがより理にかなっていると思われる設計構造です。個別のカテゴリステータス要因を削除し、X2とX3を離散的な数値要因として残しました。0はOFF/不在状態を表し、ゼロ以外の値はアクティブレベルを表します。
このモデルには、主効果、X1の二次効果、および選択された2因子交互作用項が含まれています。
DOE(
Custom Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Continuous, -1, 1, "X1", 0 ),
Add Factor( Discrete Numeric, {0, 15, 30}, "X2", 0 ),
Add Factor( Discrete Numeric, {0, 30, 45}, "X3", 0 ),
Set Random Seed( 1139260218 ), Number of Starts( 71985 ), Add Term( {1, 0} ),
Add Term( {1, 1} ), Add Term( {2, 1} ), Add Potential Term( {2, 2} ),
Add Term( {3, 1} ), Add Potential Term( {3, 2} ), Add Term( {1, 2} ),
Add Term( {1, 1}, {2, 1} ), Add Term( {1, 1}, {3, 1} ),
Add Term( {2, 1}, {3, 1} ), Set Sample Size( 12 ), Simulate Responses( 0 ),
Save X Matrix( 0 )}
);
One point I want to check is about model fitting and interpretation. Since
0 for X2 and X3 represents a real OFF/absent condition, and not just a coded low level, I assume I should be careful with automatic coding or centering of polynomial terms. My concern is that centering may make the model coefficients harder to interpret in relation to the actual OFF/absent state. Would you recommend fitting these terms using the actual numeric values, or is there a better coding strategy for this type of factor?
ご説明ありがとうございます。
はい、3 つのレベルがあると興味深いでしょう。要因の有無による反応の違いを評価できるだけでなく、低用量と高用量の間の反応の変化を推定することもできます。順序因子タイプを使用しているため、 これらの順序因子のデフォルトのコーディングに最適な状況かもしれません。順序因子の場合、因子の最初のレベルはコントロールまたはベースラインレベルであり、パラメーターは、順序因子が後続の各レベルに設定されるにつれて、反応への影響を測定します。順序因子のコーディングは、さまざまな用量を表すレベルを含む因子に適しています。最初の用量はゼロです。
多項式の項の中心化は、 連続的な因子に対してのみ行われ、離散的な数値因子に対しては行われません。
作成されたデザインに関して、JMP でデフォルトで設定されている「可能であれば」ではなく「必要」に二次効果の推定可能性を指定することで、中間レベル (最低用量に対応) でのラン数を増やすことができます。合計ラン数 (12) が同じ場合、このオプションを使用すると、レベル 15 (X2 の場合) とレベル 30 (X3 の場合) でのラン数を 2 回から 3 回に増やすことができます。各レベルでランを均等に再配分 (X2 と X3 の 3 つのレベルそれぞれで 4 回) したい場合は、カテゴリカル因子タイプでデザインを作成し、デザインが生成されテーブルが作成された後、因子タイプを数値順序に変更し、関連する列プロパティ (コーディング (最小レベルと最大レベル)、デザインロール (離散数値)、因子変更) を追加/変更できます。
この回答がモデリングの状況を明確にするのに役立つことを願っています。