############ One-way ANOVA ################# #Zadatak 1. Proveravamo da li postoji razlika u godinama po bracnim stanjima install.packages("foreign") #instaliranje i ucitavanje paketa library("foreign") Sleep=read.spss("E:/baze/sleep4ED.sav", to.data.frame = TRUE) fix(Sleep) attach(Sleep) install.packages("summarytools") # prvo zelimo da prebrojimo elemente po grupama library("summarytools") freq(marital) length(marital) library(car) #za Levinov test leveneTest(age~marital) #p-value=0.174, imamo homogenost # Sada kreiramo grupe kao posebne vektore Single=age[marital=="single"] Married=age[marital=="married/defacto"] Divorced=age[marital=="divorced"] Widowed=age[marital=="widowed"] shapiro.test(Divorced) shapiro.test(Widowed) library(nortest) ad.test(Single) ad.test(Married) #Drugi nacin za ispitivanje normalnosti (Iz svake tabele uzimamo sta nam treba) my_packages <- c("dplyr", "broom", "nortest") lapply(my_packages, require, character.only = TRUE) Sleep %>% group_by(marital) %>% do(glance(shapiro.test(.$age))) Sleep %>% group_by(marital) %>% do(glance(ad.test(.$age))) #Posto normalnu raspodelu nemam u grupi single, primenicu ANOVA test u tri grupe u kojima imam normalnost dat1=Sleep[marital!="single",] model=aov(age ~ marital, data = dat1) summary(model) #Nema razlike medju grupama # Ako pretpostavimo da je i Single sa normalnom raspodelom, onda ne moramo da pravimo novi data frame model1=aov(age ~ marital) summary(model1) #sada postoji razlika #Post hoc testovi pairwise.t.test(age, marital, p.adj = "bonf") # Zadatak 2. Poredimo nivo pospanosti (totsas) po starosnim grupama (agegp3) # Baza Sleep je vec ucitana freq(agegp3) length(agegp3) leveneTest(totsas~agegp3) # p-value=0.63 ## SAMI PROVERITE NORMALNOST RASPODELE ### model2=aov(totsas ~ agegp3) summary(model2) # nema razlike ###### KRUSKAL WALLIS test #Zadatak 3. Proveravamo da li postoji razlika u godinama po bracnim stanjima, #ali sada necemo pretpostaviti da Single ima normalnu raspodelu kruskal.test(age~marital, data=Sleep) # data=Sleep mozemo izostaviti ako smo attach-ovali bazu # Naknadni testovi install.packages("FSA") library(FSA) dunnTest(age~marital, data=Sleep)