Non so se questo è SAS IP o no, ma in caso contrario qualcuno ha una funzione per trasformare le stime dei parametri (per qualsiasi tipo di dati / tipo / modello di modellazione), nella formula di previsione utilizzata da JMP.
Non riesco a utilizzare la normale "Ottieni formula di previsione" perché ... motivi.
Mi piacerebbe fare qualcosa del genere. Il tipo di modello non conta molto per me. Ma se lo fa per il calcolo, cominciamo semplice.
Names Default to Here (1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
dt << Clear Select();
r = dt << Select Rows( 28::40 );
r << Hide and Exclude;
dt << Clear Select();
dt:sex[[3, 6, 9, 12, 27]] = "G";
fm = dt << Fit Model(
Y( :height ),
Effects( :age[:sex], :sex, :weight, :sex * :weight, :age * :weight[:sex] ),
Personality( "Generalized Regression" ),
Generalized Distribution( "Normal" ),
Run( Fit( Estimation Method( Lasso ), Validation Method( AICc ) ) )
);
pred = fm << (fit[1] << Get Prediction Formula);
// what I want
prediction_from_estimates = function({fm},
{DEFAULT LOCAL},
olb = report(fm)[OutlineBox("Parameter Estimates?")];
terms = olb[StringColBox("Term")] << Get;
est = olb[NumberColBox("Estimate")] << Get;
// do some stuff
return(prediction_formula)
);
// and I'd like it to be able to do
other_pred = prediction_from_estimates(fm);
nameexpr(pred) == nameexpr(other_pred); // true
Vorrei anche prendere qualsiasi riferimento per leggere.
Hai provato
fd= fm << publish prediction formula;
formula_function= fd << copy formula as function;
formula_transform = fd << copy formula as transform;
formula_sas = fd << generate sas code(No Editor);
formula_python = fd << generate python code(No Editor);
formula_c= fd << generate C Code(No Editor);
formula_java = fd << generate JavaScript Code(No Editor);
?
Non è che non posso usare i valori nativi. È che ho una tabella di valori di parametro da una tabella di simulazione e sto provando a mediarli e creare una formula di previsione basata su quello. Potrei salvare la formula di previsione e quindi fare un sostituto, ma sembra molto incline all'errore.