Natrénuj model pro predikci počtu půjčení kol
V tomto cvičení sestavíš model, který bude předpovídat počet půjčených kol za hodinu na základě počasí, typu dne (svátek, pracovní den nebo víkend) a denní doby. Model natrénuješ na datech za měsíc červenec.
Dataframe obsahuje tyto sloupce:
cnt: počet půjčených kol v dané hodině (výstupní proměnná)hr: hodina dne (0–23, jako faktor)holiday: TRUE/FALSEworkingday: TRUE, pokud nejde o svátek ani víkend, jinak FALSEweathersit: kategorická proměnná – „Clear to partly cloudy"/„Light Precipitation"/„Misty"temp: normalizovaná teplota v Celsiíchatemp: normalizovaná „pocitová" teplota v Celsiíchhum: normalizovaná vlhkostwindspeed: normalizovaná rychlost větruinstant: časový index – počet hodin od začátku datasetu (není to proměnná modelu)mnthayr: indexy měsíce a roku (nejsou to proměnné modelu)
Pamatuj, že při použití glm() (docs) pro model počtů musíš zadat family = poisson nebo family = quasipoisson.
Protože vstupních proměnných je hodně, uložíme si pro přehlednost název výstupní proměnné a názvy vstupních proměnných do proměnných a pomocí paste() (docs) sestavíme řetězec reprezentující vzorec modelu.
Dataframe bikesJuly je k dispozici. Názvy výstupní a vstupních proměnných jsou také načteny jako proměnné outcome a vars.
Toto cvičení je součástí kurzu
Supervised Learning in R: Regression
Pokyny k cvičení
- Doplň chybějící části a vytvoř vzorec
fmla, který vyjadřujecntjako funkci vstupních proměnných. Vypiš ho. - Vypočítej průměr (
mean()) a rozptyl (var()) proměnnébikesJuly$cnt.- Měl/a bys použít poisson, nebo quasipoisson regresi?
- Pomocí
glm()natrénuj model na datechbikesJuly:bike_model. - Pomocí
glance()prozkoumej statistiky shody modelu. Výstupglance()ulož do proměnnéperf. - Vypočítej pseudo-R-squared modelu.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# bikesJuly is available
str(bikesJuly)
# The outcome column
outcome
# The inputs to use
vars
# Create the formula string for bikes rented as a function of the inputs
(fmla <- paste(___, "~", paste(___, collapse = " + ")))
# Calculate the mean and variance of the outcome
(mean_bikes <- ___)
(var_bikes <- ___)
# Fit the model
bike_model <- ___
# Call glance
(perf <- ___)
# Calculate pseudo-R-squared
(pseudoR2 <- ___)