Summary: Una guida rapida alla sperimentazione con soggetti e all'analisi statistica dei dati, nel contesto del design di oggetti interattivi.
Per la valutazione di interfacce e sistemi interattivi esiste una pletora di paradigmi e tecniche, le quali forniscono per lo più informazioni di tipo qualitativo, oppure informazioni quantitative ma di incerta affidabilità statistica. Invece, se l'elemento di interfaccia da analizzare non è troppo complesso e se si possiedono sufficienti risorse, è possibile adattare alla valutazione di interfacce le tecniche usate nella psicologia sperimentale. In altre parole, si può cercare di fare sperimentazione scientifica con soggetti umani.
La velocità di lettura di un testo su un display è diversa per il font Helvetica rispetto al font Times.
Il ricercatore manipola le variabili indipendenti (es. font) e misura le variabili dipendenti (es. tempo di lettura).
Effetto sull'efficienza di svolgimento di un task dell'introduzione di una nuova versione di software su soggetti esperti e soggetti inesperti.
Esperimento teso a trovare il compromesso ottimo breadth vs. depth negli hyperlink del web. (Larson and Czerwinski, Microsoft, 1998) .
| Condizioni | |||
|---|---|---|---|
| Risultati | 1 | 2 | 3 |
| Media | 58 | 36 | 46 |
| SD | 23 | 16 | 26 |
Se, per via sperimentale, si accerta che la probabilità associata agli eventi è troppo bassa, l'ipotesi nulla viene respinta e si dimostra l'efficacia del trattamento, o l'esistenza di un effetto della variabile dipendente su quella indipendente.
| Situazione Effettiva | ||
|---|---|---|
| Ipotesi Nulla | vera | falsa |
| accetta | corretto | tipo II |
| respingi | tipo I | corretto |
Se prendiamo un campione di 10 programmatori e, di questi, 2
sono donne, cosa possiamo concludere? La probabilità di
ottenere il caso osservato e tutti quelli altrettanto o
più sfavorevoli all'ipotesi nulla è pari a probabilità
di tutte le sequenze con 2 femmine + probabilità di tutte le
sequenze con 1 femmina + probabilità di tutte le sequenze
con 0 femmine. La prima di queste tre probabilità, ad
esempio, si trova come
Si supponga di avere un campione di numerosità
Dati due campioni di
Due software didattici (A e B) vengono confrontati esaminando i voti dei test di due classi di studenti. Ci si chiede se i due software siano diversamente efficaci.
Usiamo il software libero R per analizzare i risultati dei test e rispondere alla domanda. La sequenza di istruzioni
> classeA
[1] 3 4 4 3 2 3 1 3 5 2
> classeB
[1] 5 5 6 7 4 4 3 5 6 5
> profitto <- c(classeA, classeB)
> label <- factor(c(rep("A", 10), rep("B", 10)))
> boxplot(profitto~label, notch=T, xlab="classi", ylab="profitto")
mostra i risultati dei test nelle due classi e disegna il
boxplot di Figura 1. Poiché i
solchi dei due plot non si sovrappongono, si può
concludere che le medie sono significativamente diverse,
con un livello di significatività al 5%. La variabilità è
simile in entrambe le classi, e pertanto ha senso
procedere con un t-test.
| Boxplot |
|---|
![]() |
> s2A <- var(classeA)
> s2B <- var(classeB)
> (mean(classeA) - mean(classeB))/sqrt(s2A/10 + s2B/10)
[1] -3.872983
Il valore ottenuto va considerato in modulo, e confrontato
con il valore critico per la significatività scelta, il
quale è
> qt(0.975, 18)
[1] 2.100922
Nel primo parametro della chiamata a qt(), si
noti come il test vada condotto a due
code, e quindi α divisa per due, perché
non c'è una direzione preferenziale di confronto: ci
interessa solo la diversità tra le due classi e non una
relazione d'ordine. Il secondo parametro è il numero
complessivo di gradi di libertà. Poiché il valore
calcolato è più grande del valore critico l'ipotesi
nulla può essere respinta. Rovesciando il ragionamento,
possiamo attribuire un valore di probabilità
all'osservazione, supponendo che valga l'ipotesi
nulla. Questa probabilità è
> 2*pt(-3.872983, 18)
[1] 0.001114540
ed è molto inferiore al 5% che ci eravamo posti come
soglia. In R, il t-test si può condurre con
una sola istruzione
> t.test(classeA, classeB)
Welch Two Sample t-test
data: classeA and classeB
t = -3.873, df = 18, p-value = 0.001115
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-3.0849115 -0.9150885
sample estimates:
mean of x mean of y
3 5
In un rapporto di ricerca, il risultato dell'analisi si
può presentare come "il profitto della classe B (Con il software libero Octave, la stessa analisi si svolgerebbe con il comando
octave> classeA = [3 4 4 3 2 3 1 3 5 2];
octave> classeB = [5 5 6 7 4 4 3 5 6 5];
octave> [p, t, df] = t_test_2(classeA, classeB, "<>")
p = 0.0011145
t = -3.8730
df = 18
L'ipotesi fondante per la verifica di ipotesi sulle medie è
che la popolazione sia normale, e di varianza omogenea tra i
campioni. Il metodo è robusto a variazioni dalla
normalità. Però deve valere l'ipotesi di indipendenza tra le
medie, e questo non si può avere con test di tipo "within
subjects". Per ovviare a questo problema si può però
riformulare il test considerando i dati come provenienti da
un unico campione di differenze di punteggi
Si abbiano
Se si hanno
Si studi la relazione tra la prestazione in un test di
apprendimento di un software (variabile
Ecco una sessione in R che produce la
regressione ai minimi quadrati (funzione
lm(), per linear model) e traccia il
grafico di Figura 2.
> risp_corrette
[1] 80 88 89 62 67 37 62 78 62 77 81 41 26 41 37 57 35 58 22 25 46 18 56 26 38 21
> help
[1] 16 25 21 13 17 2 11 14 8 12 17 7 6 16 17 21 14 25 7 12 19 9 17 14 16 6
> esperienza
[1] 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
> rce <- split(risp_corrette, esperienza)
> he <- split(help, esperienza)
> plot(help, risp_corrette, type="n", ylab="Risposte corrette",
+ xlab="invocazioni help")
> points(he[[1]], rce[[1]], pch=16)
> points(he[[2]], rce[[2]])
> lm(risp_corrette ~ help + esperienza)
Call:
lm(formula = risp_corrette ~ help + esperienza)
Coefficients:
(Intercept) help esperienza
3.738 2.280 33.962
> abline(3.738, 2.28)
> abline(3.738 + 33.962, 2.28, lty=2)
| Regressione multipla |
|---|
![]() |
Indicata con
sono associabili alla 3 di List 6:
Se si deve verificare l'ipotesi nulla
Supponiamo di avere un modello con
Maggiore è l'incremento di errore
dovuto alla esclusione di
La Equazione 12 può anche essere scritta in termini di coefficiente di determinazione:
Si studi la relazione tra lo sviluppo di capacità
logiche nella adolescenza (misurate con un test
logictest) e il tempo speso settimanalmente
ai videogame (vg) o alla televisione
(tv). Lo studio è affrontato molto
semplicemente in R.
> vg
[1] 12 7 23 8 19 24 5 31 9 21 24 17 19 6 16 12 12 11 33 14 4 2 21 18 21
> tv
[1] 32 4 12 12 22 21 14 6 9 26 19 18 12 21 18 24 23 23 12 21 26 8 23 12 26
> logictest
[1] 34 12 67 46 43 78 56 69 23 67 89 73 26 41 52 19 83 38 56 43 11 21 54 56 87
> summary(lm(logictest~tv+vg))
Call:
lm(formula = logictest ~ tv + vg)
Residuals:
Min 1Q Median 3Q Max
-28.192 -14.089 1.308 11.183 36.416
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 11.1431 12.4141 0.898 0.379108
tv 0.6083 0.5203 1.169 0.254910
vg 1.7875 0.4592 3.893 0.000783 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 18.45 on 22 degrees of freedom
Multiple R-Squared: 0.4249, Adjusted R-squared: 0.3727
F-statistic: 8.129 on 2 and 22 DF, p-value: 0.002274
Il prospetto fornito da summary(lm()) si
può interpretare come segue