F-próba (szórások azonosságára)

 

A segédprogramot Tarczay Klára írta.

 

A matematikai háttér:

Elég gyakori probléma, hogy szeretnénk tudni, két eloszlásnak vajon ugyanaz-e az átlaga. Például: az elsõ mért adatok olyanok, melyek egy esemény elõtt történtek, a második mért adatok pedig az esemény után lettek összegyûjtve. Ezek után kíváncsiak vagyunk, hogy az esemény - "kezelés" vagy a "kontrollparaméterek változtatása" - okozott-e változást. Egy egyszerû, szemléletes példa erre: meteorológiai állomást építenek a város szélére, majd néhány év elteltével a város terjeszkedése során az állomást is körbeépítik. Befolyásolta-e ez a tény az adatokat, és mennyire szignifikáns a hatása?
Az elsõ gondolatunk az lehet, megkérdezzük, hogy a két összegyûjtött adatsor átlagának mennyi a szórásnégyzete. Hasznos dolog tudni ezt a számot: megmutatja az átlagok különbségének az "erõsségét vagy fontosságát", ha ez a különbség jelentõs. Mindezek mellett nem mond semmit arról, hogy az adatsorok mennyire különböznek, azaz statisztikailag szignifikáns-e az eltérés. Az átlagok eltérése elõfordulhat, hogy semmi összefüggést nem mutat a szórásnégyzettel, miközben az eltérés akár elég nagy is lehet. Ez akkor áll fenn, ha sok adatunk van. Fordítva, a különbség mérsékleten nagy lehet, de nem szignifikáns, ha "ritkák" az adatok.
A mennyiség, ami méri az átlagok különbségének "nagyságát", nem a szórásnégyzet (standard deviation), hanem az ún. standard hiba (standard error). Az adatok értékének standard hibája megmutatja, hogy az adatokból nyert átlag mennyire pontosan becsli a "valódi átlagot". A standard hiba jellemzõen megegyezik a szórásnégyzet/adatpontok számának négyzetgyökével.

Két független, normális eloszlású adatsor tapasztalati szórása kissé eltér. Feltehetõ-e, hogy az egész sokaságban megegyezik a két elméleti szórás? Ha elosztjuk a nagyobbik szórásnégyzetet a kisebbikkel, az így kapott F: (NB-1),(NA-1) szabadságfokú F-eloszlású, ha a két elméleti szórás megegyezik. Az F-eloszlásból megállapítható két olyan határ, amelybe az adatsor nagy valószínûséggel (95%-os) esik. Az egyik határ 1-nél kisebb, a másik 1-nél nagyobb. Azonban elegendõ azt vizsgálni, hogy az 1-nél nem kisebb F a felsõ határ alatt van-e.

 

A subroutine használata:

A subroutine bemenõ adatai, vagyis amit meg kell adni: a két adatsor egy-egy vektorban tárolva és az adatsorok elemszáma data1, data2 a két vektor (valós), n1,n2 a két elemszám (egész).
A kijövõ értékek: f- az f-próba értéke (valós) és a prob nevû (valós) szám, amely megmutatja a szignifikanciát.

 

A subroutine meghívása:

A subroutine-t a következõ módon kell meghívni a fõprogramban:

call ftest(data1,n1,data2,n2,f,prob)

 

Példa a segédprogram használatára:

program fprobadr
real data1(n),data2(n)
data data1/290,311,284/
data data2/271,304,260/
call ftest(data1,n1,data2,n2,f,prob)
write(*,*)f,prob
stop
end

Fontos! A data adatmezõt a programszövegben kell módosítani, tehát nem input adat!!!!

Ha ezekkel a számokkal futattod le, ezt kell kapnod: 2.609 és 0.544

Itt leled e hasznos segédprogramot: fproba.for

 


[Vissza a fõoldalra]