Jak znaleźć wartości nie podane w tabelach statystycznych (interpolować)?

19

Często ludzie używają programów do uzyskania wartości p, ale czasami - z jakiegokolwiek powodu - konieczne może być uzyskanie wartości krytycznej z zestawu tabel.

Biorąc pod uwagę tabelę statystyczną z ograniczoną liczbą poziomów istotności i ograniczoną liczbą stopni swobody, jak uzyskać przybliżone wartości krytyczne dla innych poziomów istotności lub stopni swobody (takich jak tabele , chi-kwadrat lub ) ?F.tF

To znaczy, jak znaleźć wartości „pomiędzy” wartościami w tabeli?

Glen_b - Przywróć Monikę
źródło

Odpowiedzi:

26

Ta odpowiedź składa się z dwóch głównych części: po pierwsze, stosując interpolację liniową , a po drugie, używając transformacji w celu dokładniejszej interpolacji. Podejścia omówione tutaj nadają się do obliczeń ręcznych, gdy masz ograniczone tabele, ale jeśli wdrażasz procedurę komputerową do generowania wartości p, istnieją znacznie lepsze podejścia (jeśli są nużące, gdy wykonuje się je ręcznie), które należy zastosować zamiast tego.

Gdybyście wiedzieli, że wartość krytyczna 10% (jednostronna) dla testu Z wynosiła 1,28, a wartość krytyczna 20% wynosiła 0,84, przybliżone przypuszczenie przy wartości krytycznej 15% byłoby w połowie między - (1,28 + 0,84) / 2 = 1,06 (wartość rzeczywista to 1,0364), a wartość 12,5% można odgadnąć w połowie między tą wartością a wartością 10% (1,28 + 1,06) / 2 = 1,17 (wartość rzeczywista 1,15+). To właśnie robi interpolacja liniowa - ale zamiast „w połowie drogi” patrzy na dowolny ułamek drogi między dwiema wartościami.

Interpolacja liniowa jednowymiarowa

Spójrzmy na przypadek prostej interpolacji liniowej.

Mamy więc funkcję (powiedzmy ), która naszym zdaniem jest w przybliżeniu liniowa w pobliżu wartości, którą próbujemy oszacować, i mamy wartość funkcji po obu stronach żądanej wartości, na przykład:x

xy89.316y162015.6

Dwie wartości których „S wiadomo są 12 (20-8) od siebie. Widzisz, jak wartość (ta, dla której chcemy przybliżonej wartości ) dzieli różnicę 12 w stosunku 8: 4 (16–8 i 20–16)? Oznacza to, że jest to 2/3 odległości od pierwszej wartości do ostatniej. Gdyby związek był liniowy, odpowiadający zakres wartości y byłby w tym samym stosunku.y x y xxyxyx

interpolacja liniowa

Zatem powinien być mniej więcej taki sam jak . 16-8y169.315.69.3168208

To jesty169.315.69.3168208

zmiana układu:

y169.3+(15.69.3)168208=13.5

Przykład z tabelami statystycznymi: jeśli mamy tabelę t z następującymi wartościami krytycznymi dla 12 df:

(2-tail)αt0.013.050.022.680.052.180.101.78

Chcemy wartości krytycznej tz 12 df i alfa-ogonem 0,025. Oznacza to, że interpolujemy między 0,02 a 0,05 wiersza tej tabeli:

αt0.022.680.025?0.052.18

Wartość w „ ” Jest wartością , którą chcemy zastosować do przybliżenia za pomocą interpolacji liniowej. (Przez mam na myśli punkt odwrotnego pliku cdf rozkładu ).?t0.025t0.02510.025/2t12

Tak jak poprzednio, dzieli przedział od do w stosunku do (tj. ), a nieznana wartość powinna podzielić zakres do w tym samym stosunku; równoważnie, występuje drogi wzdłuż zakresu , więc nieznana wartość powinna wystąpić w odległości wzdłuż zakresu .0.0250.020.05(0.0250.02)(0.050.025)1:5tt2.682.180.025(0.0250.02)/(0.050.02)=1/6xt1/6t

To jest lub równoważniet0.0252.682.182.680.0250.020.050.02

t0.0252.68+(2.182.68)0.0250.020.050.02=2.680.5162.60

Rzeczywista odpowiedź to ... co nie jest szczególnie bliskie, ponieważ przybliżona funkcja nie jest bardzo zbliżona do liniowej w tym zakresie (bliżej ).2.56α=0.5

interpolacja liniowa wartości krytycznej w tabelach t

Lepsze przybliżenia dzięki transformacji

Możemy zastąpić interpolację liniową innymi formami funkcjonalnymi; w efekcie przekształcamy się w skalę, w której interpolacja liniowa działa lepiej. W tym przypadku wiele wartości krytycznych w tabeli jest bardziej liniowych względem poziomu istotności. Po pobraniu , po prostu stosujemy interpolację liniową, jak poprzednio. Spróbujmy na powyższym przykładzie:loglog

αlog(α)t0.023.9122.680.0253.689t0.0250.052.9962.18

Teraz

t0.0252.682.182.68log(0.025)log(0.02)log(0.05)log(0.02)=3.6893.9122.9963.912

lub równoważnie

t0.0252.68+(2.182.68)3.6893.9122.9963.912=2.680.50.2432.56

Co jest zgodne z podaną liczbą cyfr. Wynika to z faktu, że - gdy przekształcamy logarytmicznie skalę X - związek jest prawie liniowy:

interpolacja liniowa w logarytmie alfa
Rzeczywiście, wizualnie krzywa (szara) leży równo na linii prostej (niebieska).

W niektórych przypadkach logit poziomu istotności ( ) może działać dobrze w szerszym zakresie, ale zwykle nie jest konieczny (zwykle dbamy o dokładne wartości krytyczne tylko wtedy, gdy jest wystarczająco małe, aby działało całkiem dobrze).logit(α)=log(α1α)=log(11α1)αlog

Interpolacja w różnych stopniach swobody

tTabele , chi-kwadrat i mają również stopnie swobody, przy czym nie każda wartość df ( -) jest zestawiona w tabeli. Wartości krytyczne przeważnie nie są dokładnie reprezentowane przez interpolację liniową w df. Rzeczywiście, często bardziej zbliżone jest do tego, że wartości tabelaryczne są liniowe we wzajemności df, .Fν1/ν

(W starych tabelach często widniało się zalecenie do pracy ze - stała na liczniku nie robi różnicy, ale była wygodniejsza w dniach przed kalkulatorem, ponieważ 120 ma wiele czynników, więc jest często liczbą całkowitą, dzięki czemu obliczenia są nieco prostsze).120/ν120/ν

Oto jak odwrotna interpolacja działa na 5% wartości krytycznych między a . Oznacza to, że tylko punkty końcowe uczestniczą w interpolacji w . Na przykład, aby obliczyć wartość krytyczną dla , bierzemy (i zauważmy, że tutaj reprezentuje odwrotność cdf):F4,νν=601201/νν=80F

F4,80,.95F4,60,.95+1/801/601/1201/60(F4,120,.95F4,60,.95)

odwrotna interp w df

(Porównaj ze schematem tutaj )


Przeważnie, ale nie zawsze. Oto przykład, w którym interpolacja liniowa w df jest lepsza, i wyjaśnienie, jak powiedzieć z tabeli, że interpolacja liniowa będzie dokładna.

Oto kawałek stołu w kwadrat chi

            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

Wyobraź sobie, że chcemy znaleźć wartość krytyczną 5% (95 percentyle) dla 57 stopni swobody.

Patrząc uważnie, widzimy, że 5% wartości krytyczne w tabeli postępują prawie liniowo tutaj:

wprowadź opis zdjęcia tutaj

(zielona linia łączy wartości dla 50 i 60 df; widać, że dotyka kropek dla 40 i 70)

Interpolacja liniowa będzie więc bardzo dobra. Ale oczywiście nie mamy czasu na narysowanie wykresu; jak zdecydować, kiedy zastosować interpolację liniową, a kiedy spróbować czegoś bardziej skomplikowanego?

Oprócz wartości po obu stronach tej, której szukamy, weź następną najbliższą wartość (w tym przypadku 70). Jeśli środkowa wartość tabelaryczna (ta dla df = 60) jest zbliżona do liniowej między wartościami końcowymi (50 i 70), odpowiednia będzie interpolacja liniowa. W tym przypadku wartości są wyrównane, więc jest to szczególnie łatwe: czy bliskie ?(x50,0.95+x70,0.95)/2x60,0.95

że , co w porównaniu z rzeczywistą wartością dla 60 df, 79,082, możemy zobaczyć, że jest dokładne do prawie trzech pełnych liczb, co zwykle jest całkiem dobre dla interpolacji, więc w tym przypadku trzymałbyś się interpolacji liniowej; dzięki dokładniejszemu krokowi dla potrzebnej wartości oczekiwalibyśmy teraz dokładności 3 cyfr.(67.505+90.531)/2=79.018

Otrzymujemy więc: lubx67.50579.08267.50557506050

x67.505+(79.08267.505)5750605075.61 .

Rzeczywista wartość wynosi 75.62375, więc rzeczywiście otrzymaliśmy 3 cyfry dokładności i wypadliśmy tylko o 1 na czwartej cyfrze.

Jeszcze dokładniejszą interpolację można uzyskać, stosując metody różnic skończonych (w szczególności różnic dzielonych), ale jest to prawdopodobnie przesada w przypadku większości problemów z testowaniem hipotez.

Jeśli twoje stopnie swobody przekroczą końce stołu, to pytanie omawia ten problem.

Glen_b - Przywróć Monikę
źródło