Correndo scipy in un modo Anova in uno script
Domanda
Ho un problema. Voglio eseguire lo scipy.stats f_oneway () ANOVA in uno script che carica un archivio dati contenente gruppi con matrici numisi come:
archive{'group1': array([ 1, 2, 3, ..., ]),
'group2': array([ 9, 8, 7, ..., ]),
...}
.
Ora il mio problema è che il numero di gruppi non è fissato per diversi archivi dati. In altre parole, non so in anticipo, quanti gruppi ci sono in un archivio (e anche non necessariamente ciò che i loro nomi sono).
the Scipy Attuazione di un oneway ANOVA Accetta solo il delimitato da virgola Array come input come:
a = array([ 1, 2, 3, ..., ])
b = array([ 9, 8, 7, ..., ])
c = array([ 5, 6, 4, ..., ])
scipy.stats.f_oneway(a, b, c)
.
Ho provato a dargli elenchi, tuples, array multidimensionali tutti senza successo. Quindi, attualmente, l'unico modo in cui posso usare questa implementazione ANOVA è inserendo manualmente le variabili del Gruppo ogni volta che rende efficacemente impossibile eseguire questo in uno script. Mi chiedo se uno di voi ha un'idea come risolvere questo o come evitare questi requisiti di formato dati molto specifici di f_oneway ().
Soluzione
Suppongo che dovresti provare:
scipy.stats.f_oneway(*archive.values())
.