예측 방정식의 절반 평가 형식을 얻는 방법나는 시간과 많은 추가 요소에 대한 회귀 방정식을 구축하기 위해 적합 모델을 사용하고 있습니다. 최종 목표는 모든 추가 요소에 대해 평가된 예측 방정식이 있는 저널에 테이블을 만들고 순수 절편 + 기울기 * 시간 기반 방정식을 표시하는 것입니다. 예:
dt = Open("$SAMPLE_DATA\Powder Metallurgy.jmp");
fm = dt << Fit Model(
Y( :Shrinkage ),
Effects(
:Formation Method, :Compaction Method, :Sintering Time
),
Personality( "Standard Least Squares" ),
Emphasis( "Effect Leverage" ),
Run()
);
PredForm = Arg(Arg((FM << GetPredictionFormula), 3),1);결과는 다음과 같습니다.
0.942161598883733 + Match( :Formation Method,
"Die", 0.0407171588498178,
"Extrusion", 0.0256123252434345,
"Isostatic", -0.0663294840932524,
.
) + Match( :Compaction Method,
"Cold", 0.594574663098895,
"Warm", -0.594574663098895,
.
) + -0.0742413463542265 * :Sintering Time
그런 다음 추가 요인으로 테이블을 만들 수 있습니다.
dtEquations = dt << Summary(
Group( :Formation Method, :Compaction Method ),
Freq( "None" ),
Weight( "None" )
);
dtEquations << DeleteColumns(:N Rows);
그러면 (이 예에서) 처음 2개의 열을 보고 단순화하여 Match 문을 평가하지만 시간에 대한 방정식을 남겨두는 새 열에 방정식을 어떻게 작성합니까? 최종 목표:

모든 정적 계수가 1로 줄어들면 더욱 좋습니다.
모든 것은 여러 추가 요인 수준에 대해 동적이어야 하며 방정식은 공통 기울기, 공통 절편 또는 다른 기울기 및/또는 다른 절편일 수 있습니다.
자동화 및 스크립팅Re: 예측 방정식의 절반 평가된 형식을 얻는 방법이것은 상당히 많은 수정이 필요할 가능성이 높지만 한 가지 옵션은 Extract Expr을 사용하는 것입니다.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA\Powder Metallurgy.jmp");
fm = dt << Fit Model(
Y(:Shrinkage),
Effects(:Formation Method, :Compaction Method, :Sintering Time),
Personality("Standard Least Squares"),
Emphasis("Effect Leverage"),
Run()
);
dtEquations = dt << Summary(Group(:Formation Method, :Compaction Method), Freq("None"), Weight("None"));
dtEquations << New Column("Sintering Time", Character, Continuous, << Set Each Value(
PredForm = Arg(Arg((FM << GetPredictionFormula), 3), 1);
PredForm = Substitute(Name Expr(PredForm), Extract Expr(PredForm, Match(Wild List())), Eval(Extract Expr(PredForm, Match(Wild List()))));
PredForm = Substitute(Name Expr(PredForm), Extract Expr(PredForm, Match(Wild List())), Eval(Extract Expr(PredForm, Match(Wild List()))));
Char(Name Expr(PredForm));
));
Re: 예측 방정식의 절반 평가된 형식을 얻는 방법@jthi 훌륭합니다, 감사합니다!
모든 계수를 하나로 줄이기 위해 마지막 블록에 단순화 expr을 추가했지만 그렇지 않으면 솔루션이 완벽했습니다.
dtEquations << New Column("Sintering Time", Character, Continuous, << Set Each Value(
PredForm = Arg(Arg((FM << GetPredictionFormula), 3), 1);
PredForm = Substitute( Name Expr( PredForm ),
Extract Expr( PredForm, Match( Wild List() ) ), Eval( Extract Expr( PredForm, Match( Wild List() ) ) )
);
PredForm = Substitute( Name Expr( PredForm ),
Extract Expr( PredForm, Match( Wild List() ) ), Eval( Extract Expr( PredForm, Match( Wild List() ) ) )
);
Char(Simplify Expr(Name Expr(PredForm)));
));Re: 예측 방정식의 절반 평가된 형식을 얻는 방법멋지네요 좋은 질문입니다 @폴딘 훌륭한 솔루션 @jthi !