Perché la media della mia colonna non corrisponde a quella calcolata tramite la piattaforma di distribuzione, dopo aver escluso le righe?Il calcolo della media delle colonne prima e dopo aver escluso una riga mi fornisce gli stessi valori tramite JSL. È diverso da quanto previsto quando ottenuto dalla piattaforma di distribuzione. Dove sbaglio in JSL?
Names Default To Here( 1 );
Clear Log();
dt = Open( "$sample_data\Semiconductor Capability.jmp" ); // get data table
//get spec limits into column properties
obj = dt << Manage Spec Limits( Y( dt << Get Column Group( "Processes" ) ), Show Limits All, Save to Column Properties(1) );
obj << close window; // close Manage Spec Limits window
colName = "M1_M1"; // choose column
colMean = Col Mean(dt:colName); show (colMean); // get column mean
colMin = Col Minimum(dt:colName); show (colMin); // get column minimum value
//plot distribution
Distribution(Stack(1), Continuous Distribution(Column(:M1_M1 ), Horizontal Layout(1),Vertical(0), Process Capability(0)));
dt << select where( dt:colName == colMin)<< Hide and Exclude; // hide and exclude the minimim value of the column
colMeanNew = Col Mean(dt:colName); show (colMeanNew); // get column mean again
//plot distribution again
Distribution(Stack(1), Continuous Distribution(Column(:M1_M1 ), Horizontal Layout(1),Vertical(0), Process Capability(0)));



Automazione e scriptingfinestreRi: Perché la media della mia colonna non corrisponde a quella calcolata tramite la piattaforma di distribuzione, dopo aver escluso le righe?Col Mean() non rispetta le righe escluse come fanno le piattaforme JMP.Se usi:
colMeanNew = Col Mean( If( Excluded( Row State( Row() ) ), ., dt:colName ) );
ti darà il risultato che desideri.
Ri: Perché la media della mia colonna non corrisponde a quella calcolata tramite la piattaforma di distribuzione, dopo aver escluso le righe?Funzioni Col e stati di riga è una buona lettura a riguardo. Se non ti dispiace che le righe escluse verranno trattate come un gruppo a sé stante, puoi anche utilizzare
Col Mean(dt:colName, Excluded())
Quando usi le funzioni Col in questo modo nel tuo script (non nella formula) e hai più gruppi (Excluded avrà il proprio gruppo), devi stare un po' attento. Puoi modificare la riga corrente in modo che non sia esclusa onw (Riga() = qualcosa) o creare una formula con la funzione Col.
Un'altra opzione sarebbe quella di utilizzare Riepiloga()
summarize(dt, my_mean = Mean(dt:colName));
Ri: Perché la media della mia colonna non corrisponde a quella calcolata tramite la piattaforma di distribuzione, dopo aver escluso le righe?Tieni presente che le formule di colonna con escluso() vengono rivalutate ogni volta che viene modificata la selezione della riga:
Attenzione: luoghi in cui Jmp fa qualcosa di inaspettato
Per tabelle di dati di piccole dimensioni questo va bene; per tabelle di dati di grandi dimensioni ciò provoca un notevole ritardo.
Questo problema verrà risolto nel Jmp 18.