Zapoznaj się ze składnią i działaniem następujących funkcji w pakiecie R: sample(), rnorm(), replicate(), boot (pakiet boot), boot.ci (pakiet boot).
Teraz zrobimy to samą metodą bootstrap:
Wyniki dla różnych wielkości próby:
Dla wielkości próby ‘r nobs=50’ otrzymujemy: - średnią próbkową: ‘r mean_boot’ - odchylenie standardowe: ‘r sd_boot’ - błąd standardowy: ‘r se2’ - procentowy błąd standardowy: ‘r sep2’ - dolną krawędź przedziału ufności: ‘r dolny’ - górną krawędź przedziału ufności: ‘r gorny’
Porównaj wyniki z obu metod.
Jakie są wnioski? Czy różnice są istotne? Jak wielkość resamplingu wpływa na wyniki?
A teraz z bootstrapem i gotową funkcją boot:
Czy dochody na osobę różnią się istotnie w woj. pomorskim i podkarpackim? Porównaj wyniki testu t-studenta z wynikami testu bootstrapowego.
Dla danych “Credit” wykonaj test proporcji dla zmiennych “Student” i “Gender” - czyli sprawdź, czy status studenta różni się istotnie w zależności od płci.
Czy wyniki z włączonym bootstrapem różnią się od wyników pojedynczego testu chi2?
Wykonaj i zwizualizuj test ANOVA dla danych “Credit” (z pakietu ISLR) test Anova: czy średni bilans na karcie kredytowej różni się istotnie w zależności od pochodzenia, stanu cywilnego, statusu studenta i płci?
A teraz z włączonym bootstrapem:
W przypadku Anovy 1-czynnikowej, możemy wykorzystać pakiet wizualizująco - obliczeniowy “ggstatsplot”. Pakiet ten ma w sobie opcję bootstrappingu, która pozwala na obliczenie wartości p-wartości dla testu ANOVA.
Jakie są wnioski? Czy różnice są istotne? Jak wielkość resamplingu wpływa na wyniki? Jakie są różnice między testem ANOVA a testem ANOVA z bootstrapem?
Wnioski i potencjalne różnice Metoda klasyczna oszacowała średni dochód na 808.53 z błędem standardowym 6.14 i przedziałem ufności [796.48, 820.58], zakładając normalny rozkład danych. Metoda bootstrap dała średnią 675.70, z większym błędem standardowym (88) oraz szerszym przedziałem ufności [503.03, 848.38], co lepiej uwzględnia zmienność i asymetrię danych. W teście t-Studenta różnica dochodów między województwami była istotna zarówno w metodzie klasycznej (p < 0.05), jak i bootstrapowej (p < 0.001 ), ale bootstrap uwzględnił większą zmienność, dając szerszy przedział ufności. Różnice w wynikach wskazują, że bootstrap jest bardziej adekwatny przy danych niestandardowych lub dużej zmienności.
Resampling ~ Wynik Przy R = 100 przedziały ufności [794.6, 821.4] dla normalnej i [792.6, 820.2] dla percentylowej są mniej stabilne i bardziej podatne na losowe wahania, co potwierdza ostrzeżenie o niestabilności wyników. Przy R = 999 przedziały są dokładniejsze i lepiej odwzorowują zmienność danych, co wynika z większej liczby próbek. W teście proporcji (Student vs. Gender) bootstrap nie wpłynął znacząco na wynik (p= 0.3504 vs. p=0.3113 ), co sugeruje, że w przypadku danych spełniających klasyczne założenia bootstrap nie zawsze przynosi dodatkowe korzyści.
Anova a Anova Bootstraped W klasycznym teście ANOVA p-wartości opierają się na założeniu normalności i homoscedastyczności reszt, co w tym przypadku daje np. p=0.9548 dla Ethnicity i p <0.05 dla Student. W teście ANOVA z bootstrapem wartości p są podobne dla większości zmiennych (p=0.9599 dla Ethnicity, p=0.8629 dla Gender), ale różnica jest bardziej zauważalna dla zmiennej Student (p<0.05), co wskazuje na większą istotność przy resamplingu. Bootstrap jest bardziej odporny na naruszenia założeń klasycznego ANOVA, lepiej odzwierciedlając rozkład danych, ale może prowadzić do różnic w wynikach dla zmiennych o niestandardowym rozkładzie. Warto stosować go, gdy założenia klasycznego ANOVA mogą być naruszone.