--- title: "Enkelvoudige lineaire regressie - half - exercise" output: html_document: code_download: true theme: cosmo toc: true toc_float: true highlight: tango number_sections: true --- Stokstaartjes, een mangoestensoort die voorkomt in zuidelijk Afrika, leven in groepen. Elke groep kent zijn dominant vrouwtje, die grotendeels het monopolie heeft op de voortplanting binnen de groep: ze is de moeder van meer dan tachtig procent van de jongen die hun eerste maand overleven. Hoe ze dit monopolie bewerktstelligt, is echter minder goed begrepen. Een mogelijke verklaring ligt in het feit dat het dominante vrouwtje ongeveer een maand voor ze bevalt de andere vrouwtjes terroriseert, wat voor hen vaak uitmondt in een tijdelijke verbanning uit de groep. In een onderzoek tracht men na te gaan of deze verbanning gerelateerd is met factoren die een nadelige invloed hebben op de voortplanting. De studiepopulatie waarop het onderzoek betrekking heeft, bedraagt individuen uit 15 willekeurig gekozen groepen stokstaartjes. # Gewichtsverschil met en zonder verbanning Hier bekijken we enkel het tweede luik van het experiment. Men vergeleek tevens de gewichtsverandering tussen enerzijds vrouwtjes die uit de groep verbannen waren en vrouwtjes die in de groep konden blijven. Test op het 5% significantieniveau de onderstelling dat de gemiddelde gewichtsverandering bij vrouwtjes die verbannen waren uit de groep **verschilt van** vrouwtjes die in de groep konden blijven. Noteer tevens duidelijk uw conclusie. # R libraries inlezen ```{r} library(ggplot2) library(dplyr) library(tidyr) library(readr) ``` # Vraag 1 Dataset inlezen De dataset `stokstaartjesDat.txt` bestaat uit $60$ observaties van de volgende variabelen: - `gewicht` het gewicht van het stokstaartje - `tijdstip` tijdstip van de meting. `"voor"` indien gewogen werd voor de verbanning, anders `"na"` - `verbannen` $1$ indien verbannen, $0$ indien niet. ```{r} #In het tekstbestand zijn er drie kolomnamen gegeven op de eerste lijn; gewicht, tijdstip en verbannen. Er zijn echter vier waarden vanaf de tweede lijn, waarbij de eerste waarde een rij nummer is. Dit zal dus voor problemen zorgen bij het inlezen. Om dit probleem te verhelpen gebruiken we skip = 1 om de eerste rij met de kolomnamen over te slaan. Daarna geven we zelf kolomnamen door met col_names. Met col_types vermelden we specifiek welk type variabele iedere kolom is. Met col_select selecteren we dan de kolommen die we wel degelijk nodig hebben. stokstaartjes <- read_delim("https://raw.githubusercontent.com/statOmics/statistiekBasisCursusData/master/practicum3/stokstaartjesDat.txt", delim = "\ " , skip = 1, col_names = c("rij_nr","gewicht","tijdstip","verbannen"), col_types = list(col_integer(), col_double(), col_factor(), col_factor(levels=c("0","1"))), col_select = c("gewicht","tijdstip","verbannen")) stokstaartjes <- stokstaartjes %>% mutate( index = factor(c(rep(1:15,2),rep(16:30,2))) ) ``` # Vraag 2 Dataset formatteren We zullen voor deze oefeningen de dataset transformeren naar `stokstaartjes_wide`. Voeg ook een kolom `verschil` toe aan deze dataset die het verschil tussen de gewichten `na` en `voor` bevat. ```{r} stokstaartjes_wide <- stokstaartjes %>% pivot_wider(id_cols = ..., names_from = ..., values_from = ...) %>% mutate(...) ``` # Vraag 3 Data exploratie Maak een figuur `boxplot_verschil` met daarin de boxplots met de gewichtsverschillen voor beide groepen, met elk van de boxplots in een andere kleur en waarin de individuele datapunten getoond worden. ```{r} boxplot_verschil <- ... + ... + #boxplot layer met argument outlier.shape = NA ... + #observaties toevoegen, gebruik een jitter theme_bw() boxplot_verschil ``` # Vraag 4 Aannames We veronderstellen opnieuw onafhankelijkheid van de gegevens op basis van het studiedesign. We zullen de assumptie van normaliteit binnen elke groep nagaan aan de hand van een QQ-plot, gebruik facet_wrap (variabele verbannen) om de plot te splitsen per groep. Sla deze plot op in `qq_plot_verschil`. ```{r} qq_plot_verschil <- ... + ... + ... + facet_wrap(...) + theme_bw() qq_plot_verschil ``` # Vraag 5 t-test Voer een t-test met gepoolde steekproefvariantie uit om na te gaan om het gewichtverschil tussen voor- en na-metigen verschillend is tussen stokstaartjes die in groep bleven en stokstaartjes die verbannen werden. Doe dit op twee manieren; (1) door de twee groepen te specifieren als `x` (niet verbannen groep) en `y` (verbannen groep) in de t.test functie en (2) door een formule te specifieren in de t-test functie. Sla de respectievelijke testen op in `t_test_1` en `t_test_2`. ```{r} stokstaartjes_niet_verbannen <- ... %>% filter(... == ...) %>% pull(verschil) stokstaartjes_verbannen <- ... %>% filter(... == ...) %>% pull(verschil) t_test_1 <- t.test(x= ..., y = ..., ...) t_test_1 t_test_2 <- t.test(...~..., ...) t_test_2 ``` # Vraag 6 lineair model Stel nu een lineaire model op met de `lm` functie om het verband tussen de responsvariabele `verschil` en de verklarende variabele `verbannen` te bestuderen. Sla het resultaat op in `linmod`. ```{r} linmod <- lm(...) ``` # Vraag 7 Assumpties Ga de assumpties van het lineaire regressiemodel na met behulp van de `plot` functie. Aan welke voorwaarde van lineaire regressie werd niet voldaan? Vul het juiste antwoord in in Dodona. 1. Er werd aan alle voorwaarden voldaan 2. Normaliteit 3. Homsocedasticiteit 4. Lineariteit ```{r} ... ``` # Vraag 8 Bekom de modelparameters Op basis van de plots met betrekking tot de modelassumpties lijkt het hier niet nodig om de data te transformeren. Merk op dat een standaard logaritmische transformatie in deze dataset niet zou werken om dat vele van de gewichtsverschillennegatieve waarden zijn. We werken door met het lineaire model `linmod`. Gebruik de summary functie om de modelparameters van het opgestelde lineaire model te bekomen. Sla het resultaat op in `summaryLinmod`. We zullen dit object gebruiken om de overige vragen rond interpretatie te beantwoorden. ```{r} summaryLinmod <- ... summaryLinmod ```