Aan de slagGa gratis aan de slag

Fit een model voor de overlevingskans van mussen

In deze oefening schat je de kans dat een mus een zware winterstorm overleeft, op basis van fysieke kenmerken van de mus. De gegevensset sparrow is al ingeladen. De te voorspellen uitkomst is status ("Survived", "Perished"). De variabelen die we meenemen zijn:

  • total_length: lengte van de vogel van punt van de snavel tot punt van de staart (mm)
  • weight: in gram
  • humerus: lengte van de humerus ("bovenarmbot" dat de vleugel met het lichaam verbindt) (inches)

Onthoud dat je bij glm() (docs) voor een logistisch regressiemodel expliciet moet aangeven dat family = binomial:

glm(formula, data = data, family = binomial)

Je roept summary() en broom::glance() aan om verschillende functies te zien voor het onderzoeken van een logistisch regressiemodel. Een van de diagnostische maten die je bekijkt is de tegenhanger van \(R^2\), pseudo-\(R^2\) genoemd.

$$ pseudoR^2 = 1 - \frac{deviance}{null.deviance} $$

Je kunt deviantie zien als analoog aan variantie: het is een maat voor de variatie in categorische data. Pseudo-\(R^2\) is analoog aan \(R^2\) bij standaardregressie: \(R^2\) is een maat voor de "verklaarde variantie" van een regressiemodel. Pseudo-\(R^2\) is een maat voor de "verklaarde deviantie".

Deze oefening maakt deel uit van de cursus

Supervised Learning in R: Regressie

Cursus bekijken

Oefeninstructies

  • Zoals in de video voorgesteld, ga je voorspellen op de uitkomsten TRUE en FALSE. Maak een nieuwe kolom survived in de data frame sparrow die TRUE is wanneer status == "Survived".
  • Maak de formule fmla die survived uitdrukt als functie van de relevante variabelen. Print deze.
  • Fit een logistisch regressiemodel om de overlevingskans van mussen te voorspellen. Ken het model toe aan de variabele sparrow_model.
  • Roep summary() aan om de coëfficiënten van het model, de deviantie en de nuldeviantie te zien.
  • Roep glance() aan op het model om de deviantie(s) en andere diagnostiek in een data frame te zien. Ken de output van glance() toe aan de variabele perf.
  • Bereken pseudo-\(R^2\).

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# sparrow is available
summary(sparrow)

# Create the survived column
sparrow$survived <- ___

# Create the formula
(fmla <- _____)

# Fit the logistic regression model
sparrow_model <- ___

# Call summary
___

# Call glance
(perf <- ___)

# Calculate pseudo-R-squared
(pseudoR2 <- ___)
Code bewerken en uitvoeren