come utilizzare jsl per calcolare la deviazione standard per IDSalve, ho una tabella simile a questa e volevo selezionare gli ID in cui sono presenti più voci e calcolare la deviazione standard del risultato raggruppato per ID. Ad esempio, in questo caso devo selezionare l'ID 12345 e calcolare la deviazione standard dei primi 3 risultati.
So che posso farlo tabulando, ma la mia tabella reale è molto grande, più di 1 milione di righe, tabulare per ID e calcolare la deviazione standard risulta essere estremamente dispendioso in termini di tempo. La maggior parte degli ID nella mia tabella attuale hanno solo una riga. Posso comunque fare qualcosa del genere e quindi calcolare la deviazione standard per il gruppo di risultati rimanente in base all'ID? Grazie per il tuo suggerimento!
seleziona dove(n righe(raggruppamento colonne (:ID))>1)
| ID | risultato |
| 12345 | 0,3 |
| 12345 | 0.4 |
| 12345 | 0,2 |
| 23456 | 0,5 |
| 34567 | 0,2 |
Modellazione statistica avanzataAutomazione e scriptingRe: come utilizzare jsl per calcolare la deviazione standard in base all'IDSeleziona la colonna di raggruppamento (ID)

Quindi seleziona la colonna su cui desideri eseguire il calcolo e seleziona Deviazione standard (nota Raggruppamento per ID)



Re: come utilizzare jsl per calcolare la deviazione standard in base all'IDPoche altre opzioni
Creare una tabella riepilogativa

Dopo aver ottenuto la tabella di riepilogo, puoi fare clic sulla colonna stddev e tenere premuto il mouse per un po'. Ciò ti consente di "scegliere" la colonna e rilasciarla nella tabella originale

Avresti potuto anche utilizzare Aggiorna con la tabella di riepilogo

Puoi creare una tabella simile usando Tabulate (nota che l'id è nominale)

Quindi dal triangolo rosso, trasformalo nella tabella dati

puoi quindi utilizzare Aggiorna (o unisci) per riportare i risultati nella tua tabella.
Ci sono anche molte opzioni di scripting, eccone una che usa Summarize()
Names Default To Here(1);
dt = Current Data Table();
Summarize(ids = by(:ID), stddevs = Std dev(:result));
show(ids, stddevs);
// ids = {"12345", "23456", "34567"}; // note that these are strings even if they were numbers originally
// stddevs = [0.1, ., .];