Ri: aggiornamento di un file Everytime Loop Run (JSL)<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ho caricato il file di dati (che ho importato in XL mentre eseguivo il mio script) che ho usato nello script sopra
La mia sceneggiatura è: -
Clear Globals ();
dt = open ();
k = 5;
collect_means = {}; collect_stdevs = {}; collect_group_std = {};
Per (l = 1, l <= 2, l ++,
mostra (k);
Per (i = 1, i <= 3, i ++, // 3 volte
nt = dt << Sottoinsieme (
Tabella di output ("sottoinsieme"),
Dimensione del campione (k), // campioni di 5
);
Riepiloga (m = Media (: Dati), s = Std Dev (: Dati));
Insert Into (collect_means, m, 0);
Insert Into (collect_stdevs, s, 0);
// close ("sottoinsieme", nosave);
);
Nuova tabella ("Finale",
Nuova colonna ("significa", imposta valori (collect_means)),
Nuova colonna ("stddevs", imposta valori (collect_stdevs)),
// Nuova colonna ("Group Std", Formula (col std dev (: means)))
);
// pt << Summary (Group, Std Dev (: means));
pt = Data Table ("Final") << riepilogare (p = std dev (: significa));
Insert Into (collect_group_std, p, 0);
// chiude ( "Final", nosave);
k = k + 5;
);
Nuova tabella ("Gruppi", Nuova colonna ("Gruppo di riepilogo", imposta valori (collect_group_std)));
Il foglio "Finale" nello script sopra deve essere aggiornato ogni volta che viene eseguito il ciclo For esterno. Ma ora, il "Foglio FInale" non viene aggiornato e usa il precedente foglio "Finale" (usando il foglio dell'iterazione precedente). Qualcuno può aiutare in modo che il foglio "Finale" venga aggiornato ogni volta con nuovi valori.
Ri: aggiornamento di un file Everytime Loop Run (JSL)Btw, usare liste e molte tabelle intermedie non è molto efficiente. Qui tutti i dati sono numerici e i sottotitoli e il tablatore finale sembrano non essere di interesse se non quello di agire come detentori temporanei di dati. In questo caso, suggerirei invece di utilizzare matrici che sono molto più efficienti, in particolare per i set di dati di grandi dimensioni.
Prova questo e confronta le prestazioni con lo script precedente:
Chiari Globali () ;
dt = Tabella dati ( "Dati campione" ) ;
collect_group_std = [] ;
ks = [] ;
Per ( K = 5 , K <= 10 , K = K + 5 ,
collect_means = [] ;
ks = ks | / K ;
Per ( io = 1 , io <= 3 , io ++, //3 volte
sub = Indice casuale ( N righe ( dt ) , K ) ;
collect_means = collect_means | / Significare ( dt : Dati [ sub ] ) ;
Mostrare ( collect_means ) ;
) ;
collect_group_std = collect_group_std | / Std Dev ( collect_means ) ;
) ;
Nuova tabella ( "Gruppi" , Nuova colonna ( "K" , setvalues ( ks ) ) , Nuova colonna ( "Gruppo di riepilogo" , imposta valori ( collect_group_std ) ) ) ;
Ri: aggiornamento di un file Everytime Loop Run (JSL)La funzione di riepilogo non deve essere utilizzata come messaggio. Quando si lavora con più tabelle che hanno nomi di colonne identici, è anche una buona idea includere esplicitamente la tabella nel contesto (ed dt: Data invece di solo: Data). E anche se non sono sicuro di esattamente ciò che si vuole ottenere qui, non dovrebbe fare la lista collect_means e collect_stdevs devono essere ripristinati per ogni ciclo esterno?
Di seguito è riportato il codice con alcune modifiche minori.
Chiari Globali () ;
dt = Tabella dati ( "Dati campione" ) ;
K = 5 ;
collect_group_std = {} ;
Per ( l = 1 , l <= 2 , l ++,
collect_means = {} ;
collect_stdevs = {} ;
Mostrare ( K ) ;
Per ( io = 1 , io <= 3 , io ++, //3 volte
nt = dt << sottoinsieme (
Tabella di output ( "Sottoinsieme" ) ,
Misura di prova ( K ) , // campioni di 5
) ;
Ricapitolare ( m = Significare ( nt : Dati ) , S = Std Dev ( nt : Dati ) ) ;
Inserire ( collect_means , m , 0 ) ;
Inserire ( collect_stdevs , S , 0 ) ;
// Close (nt, nosave);
) ;
pt = Nuova tabella ( "Finale" ,
Nuova colonna ( "si intende" , imposta valori ( collect_means ) ) ,
Nuova colonna ( "stddevs" , imposta valori ( collect_stdevs ) ) ,
) ;
Ricapitolare ( p = Std Dev ( pt : si intende ) ) ;
Inserire ( collect_group_std , p , 0 ) ;
// Close (pt, nosave);
K = K + 5 ;
) ;
Nuova tabella ( "Gruppi" , Nuova colonna ( "Gruppo di riepilogo" , imposta valori ( collect_group_std ) ) ) ;