Questa risposta è in due parti principali: in primo luogo, utilizzando l'interpolazione lineare , e in secondo luogo, utilizzando le trasformazioni per un'interpolazione più accurata. Gli approcci discussi qui sono adatti per il calcolo manuale quando hai a disposizione tabelle limitate, ma se stai implementando una routine informatica per produrre valori p, ci sono approcci molto migliori (se noiosi quando fatti a mano) che dovrebbero essere usati invece.
Se sapessi che il valore critico del 10% (una coda) per un test z era 1,28 e il valore critico del 20% era 0,84, un'ipotesi approssimativa al valore critico del 15% sarebbe a metà strada tra - (1,28 + 0,84) / 2 = 1,06 (il valore effettivo è 1,0364) e il valore del 12,5% potrebbe essere indovinato a metà tra quello e il valore del 10% (1,28 + 1,06) / 2 = 1,17 (valore reale 1,15+). Questo è esattamente ciò che fa l'interpolazione lineare, ma anziché "a metà strada", osserva qualsiasi frazione del percorso tra due valori.
Interpolazione lineare univariata
Diamo un'occhiata al caso della semplice interpolazione lineare.
Quindi abbiamo una funzione (diciamo di x ) che riteniamo approssimativamente lineare vicino al valore che stiamo cercando di approssimare, e abbiamo un valore della funzione su entrambi i lati del valore che vogliamo, ad esempio, in questo modo:
x81620y9.3y1615.6
I due valori cui sappiamo y sono a distanza di 12 (20-8). Vedi come il valore x (quello per cui vogliamo un valore y approssimativo ) divide quella differenza di 12 in su nel rapporto 8: 4 (16-8 e 20-16)? Cioè, è 2/3 della distanza dal primo valore x all'ultimo. Se la relazione fosse lineare, l'intervallo corrispondente di valori y sarebbe nello stesso rapporto.xyxyx
Quindi dovrebbero essere circa gli stessi di16-8y16−9.315.6−9.3 .16−820−8
Questo è y16−9.315.6−9.3≈16−820−8
riordinando:
y16≈9.3+(15.6−9.3)16−820−8=13.5
Un esempio con tabelle statistiche: se abbiamo una tabella t con i seguenti valori critici per 12 df:
(2-tail)α0.010.020.050.10t3.052.682.181.78
Vogliamo il valore critico di t con 12 df e un alfa a due code di 0,025. Cioè, interpoliamo tra la riga 0,02 e 0,05 di quella tabella:
α0.020.0250.05t2.68?2.18
Il valore su " " È il valore t 0,025 che vogliamo usare per l'interpolazione lineare. (Per t 0.025 intendo effettivamente il punto 1 - 0,025 / 2 del cdf inverso di una distribuzione t 12 ).?t0.025t0.0251−0.025/2t12
Come in precedenza, divide l'intervallo da 0,02 a 0,05 nel rapporto ( 0,025 - 0,02 ) a ( 0,05 - 0,025 ) (cioè 1 : 5 ) e il valore t sconosciuto dovrebbe dividere l' intervallo t da 2,68 a 2,18 nello stesso rapporto; equivalentemente, si verifica 0,025 ( 0,025 - 0,02 ) / ( 0,05 - 0,02 ) = 1 /0.0250.020.05(0.025−0.02)(0.05−0.025)1:5tt2.682.180.025 th della strada lungo il x -range, in modo sconosciuto t -value dovrebbe verificarsi 1 / 6 ° della strada lungo il t -range.(0.025−0.02)/(0.05−0.02)=1/6xt1/6t
Quello è o equivalentit0.025−2.682.18−2.68≈0.025−0.020.05−0.02
t0.025≈2.68+(2.18−2.68)0.025−0.020.05−0.02=2.68−0.516≈2.60
2.56α=0.5
Migliori approssimazioni tramite trasformazione
loglog
α0.020.0250.05log(α)−3.912−3.689−2.996t2.68t0.0252.18
Adesso
t0.025−2.682.18−2.68≈=log(0.025)−log(0.02)log(0.05)−log(0.02)−3.689−−3.912−2.996−−3.912
o equivalentemente
t0.025≈=2.68+(2.18−2.68)−3.689−−3.912−2.996−−3.9122.68−0.5⋅0.243≈2.56
Che è corretto per il numero di cifre indicato. Questo perché - quando trasformiamo logaritmicamente la scala x - la relazione è quasi lineare:
Infatti, visivamente la curva (grigia) si trova ordinatamente in cima alla linea retta (blu).
In alcuni casi, il logit del livello di significatività ( logit(α)=log(α1−α)=log(11−α−1)αlog
Interpolazione tra diversi gradi di libertà
tFν†1/ν
120/ν120/ν
F4,νν=601201 / νν= 80F
F4 , 80 , .95≈ F4 , 60 , .95+ 1 / l'80 - 1 / il 601 / 120 - 1 / il 60⋅ ( F4 , 120 , .95- F4 , 60 , .95)
(Confronta con il diagramma qui )
†
Ecco un pezzo di un tavolo chi quadrato
Probability less than the critical value
df 0.90 0.95 0.975 0.99 0.999
______ __________________________________________________
40 51.805 55.758 59.342 63.691 73.402
50 63.167 67.505 71.420 76.154 86.661
60 74.397 79.082 83.298 88.379 99.607
70 85.527 90.531 95.023 100.425 112.317
Immagina di voler trovare il valore critico del 5% (95 ° percentile) per 57 gradi di libertà.
Osservando da vicino, vediamo che i valori critici del 5% nella tabella procedono quasi linearmente qui:
(la linea verde unisce i valori di 50 e 60 df; puoi vedere che tocca i punti per 40 e 70)
Quindi l'interpolazione lineare farà molto bene. Ma ovviamente non abbiamo tempo per disegnare il grafico; come decidere quando utilizzare l'interpolazione lineare e quando provare qualcosa di più complicato?
( x50 , 0,95+ x70 , 0,95) / 2X60 , 0,95 ?
(67.505+90.531)/2=79.018
x−67.50579.082−67.505≈57−5060−50
x≈67.505+(79.082−67.505)⋅57−5060−50≈75.61
Il valore effettivo è 75.62375, quindi abbiamo effettivamente ottenuto 3 cifre di precisione e siamo rimasti fuori solo da 1 nella quarta cifra.
Un'interpolazione più accurata può ancora essere ottenuta utilizzando metodi di differenze finite (in particolare, mediante differenze divise), ma questo è probabilmente eccessivo per la maggior parte dei problemi di verifica delle ipotesi.
Se i tuoi gradi di libertà superano le estremità del tuo tavolo, questa domanda discute quel problema.