LoslegenKostenlos loslegen

Lineare Regression auf jedem verschachtelten Datensatz durchführen

Nachdem du die Daten für jedes Land in der Spalte data in getrennte Datensätze aufgeteilt hast, musst du für jeden dieser Datensätze ein lineares Modell anpassen.

Die Funktion map() aus purrr wendet eine Formel auf jedes Element einer Liste an, wobei . das einzelne Element darstellt. Du könntest zum Beispiel zu jeder Zahl in einer Liste eins addieren:

map(numbers, ~ 1 + .)

Das bedeutet, um ein Modell auf jeden Datensatz anzupassen, kannst du Folgendes tun:

map(data, ~ lm(percent_yes ~ year, data = .))

Dabei steht . für jedes einzelne Element der Spalte data in by_year_country. Denk daran: Jedes Element in der Spalte data ist ein Datensatz, der sich auf ein bestimmtes Land bezieht.

Diese Übung ist Teil des Kurses

Fallstudie: Explorative Datenanalyse in R

Kurs anzeigen

Anleitung zur Übung

  • Lade die Pakete tidyr und purrr.
  • Verwende nach dem Verschachteln die Funktion map() innerhalb von mutate(), um auf jedem Datensatz (d. h. jedem Element der Spalte data in by_year_country) eine lineare Regression durchzuführen, wobei percent_yes als Funktion von year modelliert wird. Speichere die Ergebnisse in der Spalte model.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Load tidyr and purrr



# Perform a linear regression on each item in the data column
by_year_country %>%
  nest(-country)
  
Code bearbeiten und ausführen