# Test dei run

In statistica il test dei run, o test delle sequenze, o test di Wald-Wolfowitz (da Abraham Wald e Jacob Wolfowitz) è un test di verifica d'ipotesi, non parametrico, condotto sull'indipendenza dei dati in una sequenza binaria.
Il test ammette che la sequenza venga da un processo di Bernoulli e ne accetta le frequenze osservate, per controllare la casualità della distribuzione dei dati. Per fare questo considera il numero di catene alternate di simboli uguali, o run.

## I run

Ad esempio, la sequenza "1111000111001111110000" possiede 6 run: "1111 000 111 00 111111 0000". I simboli comunemente usati sono "+" e "-", perché il test viene solitamente condotto per controllare la distribuzione dei valori superiori o inferiori alla mediana o ad una funzione di interpolazione.
Una sequenza in cui i run siano pochi (come "111111000000") o troppi (come "101010101010") rispetto alla frequenza dei simboli probabilmente non è il risultato di una fluttuazione dei dati e può indicare un errore sistematico.

## Test

Il test dei run suppone che il numero di run di una sequenza lunga $N$, di $N^{+}$ simboli "+" e $N^{-}$ simboli "-" (quindi con $N=N^{+}+N^{-}$ si comporti come una variabile aleatoria di legge normale ${\mathcal {N}}(\mu ,\sigma )$ con
    valore atteso $\mu =1+2{\frac {N^{+}N^{-}}{N}}$
    e varianza $\sigma ^{2}={\frac {(\mu -1)(\mu -2)}{N-1}}$.
Solitamente si chiede che entrambi $N^{+}$ e $N^{-}$ siano superiori a 20.
Test d'ipotesi alternativi sono il test di Kolmogorov-Smirnov e il test χ², che è "complementare" al test dei run (nel senso che considera i valori assoluti degli scostamenti dalla media, non i loro segni).

## Probabilità

La situazione del test è modellizzata da un processo di Bernoulli di parametro p, ovvero in una successione di variabili aleatorie indipendenti X$_1$, ..., X$_n$ con probabilità $P(X_{i}=1)=p$ di verificare una proprietà (simbolo "+") e $P(X_{i}=0)=q=1-p$ di non verificarla (simbolo "-"). Il numero di simboli dopo n prove è dato dalle variabili aleatorie $S_{n}=X_{1}+\ldots +X_{n}$ e ${n-S_{n}}$, con valore atteso rispettivamente n$^+$=np e n$^-$=nq.
Il numero di run può essere definito come
    $R_{n}=1+I_{1}+\ldots +I_{n-1}$,
dove le variabili aleatorie $I_{i}=|X_{i}-X_{i+1}|$ contano i nuovi run.
La speranza e la varianza di $R_{n}$ sono
    $E[R_{n}]=1+2(n-1)pq$;
    ${\text{Var}}(R_{n})=(4n-6)pq-(12n-20)p^{2}q^{2}$.
Lo stimatore del valore atteso di $R_{n}$, $\textstyle 1+2{\frac {S_{n}(n-S_{n})}{n}}=1+2n{\frac {S_{n}}{n}}(1-{\frac {S_{n}}{n}})$, è privo di bias:
    $E{\big\textstyle 1+2{\frac {S_{n}(n-S_{n})}{n}}{\big ]}-E[R_{n}]=0$.

## Esempio

Ad esempio, per una sequenza con N=16, N$^+$=10 e N$^-$=6 (normalmente il test viene condotto su sequenze più lunghe), secondo il test dei run se i caratteri fossero indipendenti il numero di run dovrebbe seguire la legge normale ${\mathcal {N}}(\mu ,\sigma ^{2})$ con
    speranza $\textstyle \mu =1+2{\frac {N^{+}N^{-}}{N}}=1+2{\frac {6\cdot 10}{16}}={\frac {17}{2}}=8,5$ ;
    varianza $\textstyle \sigma ^{2}={\frac {(\mu -1)(\mu -2)}{N-1}}={\frac {{\frac {15}{2}}{\frac {13}{2}}}{15}}={\frac {13}{4}}=3,25$ ;
    scarto tipo $\textstyle \sigma ={\sqrt {3,25}}=1,802...$.
In particolare, gli stessi dati sono presenti con diverse distribuzioni in queste sequenze:
* "1111111111000000" ha 2 run, pari a circa $\mu -3,6\sigma$,
* "1010110110101101" ha 13 run, pari a circa $\mu +2,5\sigma$,
* "1100110111001101" ha 9 run, pari a circa $\mu +0,3\sigma$;
i loro valori p (ovvero le probabilità di discostarsi così tanto dalla media) sono all'incirca 0,0005 per la prima, 0,01 per a seconda e 0,76 per la terza.