Wat doet Matlab ttest precies?

Matlab ttest “retourneert een testbeslissing voor de nulhypothese dat de gegevens in x afkomstig zijn van een normale distributie met gemiddelde gelijk aan nul en onbekende variantie, met behulp van de t-test met één steekproef. “

Kan iemand verduidelijken wat er precies wordt uitgevoerd door het commando ttest wanneer deze wordt uitgevoerd op een vector met getallen $ a_1, a_2, \ ldots, a_n $? OK om te beantwoorden in een vorm als “het geeft de waarde $ x $ die $ y $ maximaliseert”.

Ik realiseer me dat dit waarschijnlijk een triviale vraag is voor de experts, maar ik kan niet gemakkelijk een duidelijk antwoord.

Antwoord

Matlab “s ttest neemt je vector met gegevens en voert er een Student “s (één steekproef) t-test op uit, ervan uitgaande dat:

  • de populatie u bedoelt “opnieuw testen tegen, $ \ mu_ {0} $, is nul
  • $ n $ is gelijk aan length(x)
  • het niveau van statistische significantie, of Type I-fout , u “bereid bent te accepteren is 5%; u kunt het aantal Type I-fouten dat u bereid bent te accepteren wijzigen in de argumenten van de functie

De $ t $ -test berekent het gemiddelde van de gegevens in x (dwz $ \ bar {x} = $ sum(x)/length(x)), en de voorbeeldstandaarddeviatie , $ s $, meestal met de formule

\ begin {align} s = \ sqrt {\ frac {1} {n – 1} \ sum_ {i = 1} ^ {n} (x_ {i} – \ bar {x}) ^ {2}}, \ end {align}

wat corrigeert voor het feit dat $ s $ de werkelijke standaarddeviatie schat van de populatie waarvan x steekproeven.

Dan is de $ t $ -statistiek

\ begin {align} t = \ frac {\ bar {x} – \ mu_ {0}} {s / \ sqrt {n}} = \ frac {\ bar {x}} {s / \ sqrt {n}}, \ end {align}

omdat $ \ mu_ {0} $ gelijk is aan nul. De documentatie zegt niet “, dus ik neem aan dat de test een bidirectionele $ t $ -test is, wat betekent dat ttest 1 retourneert als $ t $ groter is dan tinv(0.95, length(x)) of minder dan tinv(0.05, length(x)) (dit zijn de t-statistieken die overeenkomen met een significantieniveau van 5%; het zou zo moeten zijn dat tinv(0.05, length(x)) is gelijk aan -tinv(0.95, length(x))). Anders geeft ttest als resultaat 0.

Opmerkingen

  • Bedankt. Kun je zeggen wat tinv is (opnieuw niet erg duidelijk voor mij), en hoe wordt de p-waarde p berekend in een aanroep [h, p] = ttest?
  • De student ' st-verdeling is een kansverdeling met een parameter $ \ nu $ (genaamd de " graden van vrijheid ") Als x = tinv (0.95, nu), dan voor een willekeurige variabele $ t $ met de Student ' st distributie met $ \ nu $ vrijheidsgraden, $ P (t < = x) = 0,95 $. Met andere woorden, x is het 95e percentiel van deze kansverdeling.
  • Of, als je wilt: ttest retourneert 1 of nul. De array of vector die naar ttest wordt gevoerd, wordt geanalyseerd om na te gaan of de vector afkomstig was uit een populatie die normaal verdeeld was. Of niet. Return van 1 betekent " ja " (95% BI), nul betekent nee. Nul kan ook betekenen dat de vector niet voldeed aan de veronderstelling dat het gemiddelde nul is. Andere argumenten voor ttest hebben verschillende betekenissen. Dit is voor H = ttest (x);

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *