Jeg prøver å få Bonferroni-korreksjonen riktig.
La oss anta at jeg har et datasett med 100 p-verdier, 20 signifikant på minimum 10% -nivået (p-verdi < 0.1) og 80 ikke signifikant (p-verdi> = 0.1).
Når du bruker Bonferroni-korreksjonen med R, ved hjelp av p.adjust()
hva er riktig n
verdi?
Skal jeg sette n = 100
(alle p-verdier) eller n = 20
(bare signifikante p-verdier)?
Takk for all hjelp
Svar
Det virker ikke uansett om p-verdiene dine er signifikante eller ikke. n er antall tester (= p-verdier) du vil korrigere for. Hvis du er interessert i resultatene av alle 100 testene, så er n = 100.
Kommentarer
- så bruk av n = 100 skal gjelde også hvis jeg er interessert i å korrigere bare p-verdiene t hat er viktig?
- Ja, du bør ikke korrigere basert på p-verdier. Du bør kontrollere Type 1 feilrate for flere tester før du kjører testene. Først bestemme hvor mange tester du faktisk vil kjøre. Du blir straffet for å kjøre unødvendige tester.
- takk. Men med mine reelle data ut av 1000 tester får jeg bare to signifikante p-verdier etter Bonferroni-korreksjonen. Jeg synes det er for strengt.
- Det er andre rettelser som kan gi deg mer kraft til å oppdage betydelige effekter. Viktige punkter er: 1) hvorfor kjører du 100 (1000?) Tester? 2) hvorfor høres du ut som at målet ditt er å finne betydning? Dette burde ikke være ' for å være tilfelle, du bør sikte på å lage riktige slutninger og korreksjon – Bonferroni eller annet – hjelper deg med å kontrollere Type 1 feilrate, noe som hjelper i den retningen.
- Jeg vet ikke ' Jeg kjenner ikke fagfeltet ditt, design eller forskningsspørsmål, så det er utenfor meg om du virkelig trenger alle slike tester. Hvis dette er utforskende forskning, kan du vurdere andre alternativer enn NHST og p-verdier.