Calcolo delle derivate di una funzione di smoothing del kernelCiao di nuovo,
Sto utilizzando lo smoother kernel per stimare alcuni valori e sanificare la formula di previsione in una nuova colonna. Funziona molto bene per il mio scopo.
obj = dt_clean << Bivariata ( Y ( : temperatura ), X ( : Z_res ) , di (: data ),invisible);
obj << Livellatore del kernel ( 1 , 1 , . 2 , 0 );
obj << (curva[ 2 ] << Salva formula di previsione );
Ora ho bisogno di calcolare la derivata di questa funzione in ogni punto della variabile X. Posso farlo facilmente all'interno della tabella dati usando la funzione derivata nell'editor di formule. Tuttavia, devo farlo all'interno di un codice JSL. Ho provato diverse sintassi, ma senza successo. Qualche suggerimento su come fare, magari condividendolo con la community?
Grazie mille per qualsiasi aiuto possiate fornirmi, Yves
Automazione e scriptingOggetto: Calcolo delle derivate di una funzione di smoothing del kernelÈ possibile richiamare questa funzione da JSL che visualizza la funzionalità dall'Editor di formule:

Oggetto: Calcolo delle derivate di una funzione di smoothing del kernelGrazie Mark per la rapida risposta. Avevo già provato a usare la funzione sopra menzionata, ma alla fine sono riuscito a farla funzionare inserendo prima la formula di previsione in un'espressione, applicando poi la funzione derivata all'espressione del nome e salvando il risultato in una nuova colonna. Ecco il codice per riferimento. Grazie ancora!
formula_exp = column(4) << Get Formula;
der_expr=derivative( name expr(formula_exp), :Z_res) ;
dt_clean<< New Column( "Derivative", Formula( Name expr(der_expr)));
Oggetto: Calcolo delle derivate di una funzione di smoothing del kernelWow, davvero bello, grazie!
: - )

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
gb = dt << Graph Builder(
Size( 437, 413 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), Overlay( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) )
);
gbb = Report(gb)[GraphBuilderBox(1)];
gbb << updateElement(1, 1, 2, {Save Formula});
nc= n cols(dt);
myFormula = column (dt,nc) << get formula;
Eval (Eval Expr(New Column( "derivative",
Formula(
f = As Constant(
Derivative( Expr(Name Expr(myFormula)),:height ));
f;
),
)));
gb << Add Variable( {:derivative, Role( "Y" )} )