Verwendung der spread-funktion in r (mit beispielen)
Mit der Funktion spread() im Tidyr- Paket kann ein Schlüssel-Wert-Paar über mehrere Spalten „verteilt“ werden.
Diese Funktion verwendet die folgende grundlegende Syntax:
Verbreitung (Daten, Schlüsselwert)
Gold:
- data : Name des Datenrahmens
- Schlüssel : Spalte, deren Werte zu Variablennamen werden
- value : Spalte, in die die Werte unter den neuen Variablen eingefügt werden, die aus dem Schlüssel erstellt wurden
Die folgenden Beispiele zeigen, wie Sie diese Funktion in der Praxis nutzen können.
Beispiel 1: Verteilen Sie die Werte auf zwei Spalten
Angenommen, wir haben den folgenden Datenrahmen in R:
#create data frame df <- data. frame (player= rep (c(' A ', ' B '), each= 4 ), year= rep (c(1, 1, 2, 2), times= 2 ), stat= rep (c(' points ', ' assists '), times= 4 ), amount=c(14, 6, 18, 7, 22, 9, 38, 4)) #view data frame df player year stat amount 1 A 1 points 14 2 A 1 assists 6 3 A 2 points 18 4 A 2 assists 7 5 B 1 points 22 6 B 1 assists 9 7 B 2 points 38 8 B 2 assists 4
Wir können die Funktion spread() verwenden, um die Werte der Statistikspalte in ihre eigenen Spalten umzuwandeln:
library (tidyr) #spread stat column across multiple columns spread(df, key=stat, value=amount) player year assists points 1 to 1 6 14 2 to 2 7 18 3 B 1 9 22 4 B 2 4 38
Beispiel 2: Werte auf mehr als zwei Spalten verteilen
Angenommen, wir haben den folgenden Datenrahmen in R:
#create data frame df2 <- data. frame (player= rep (c(' A '), times= 8 ), year= rep (c(1, 2), each= 4 ), stat= rep (c(' points ', ' assists ', ' steals ', ' blocks '), times= 2 ), amount=c(14, 6, 2, 1, 29, 9, 3, 4)) #view data frame df2 player year stat amount 1 A 1 points 14 2 A 1 assists 6 3 A 1 steals 2 4 A 1 blocks 1 5 A 2 points 29 6 A 2 assists 9 7 A 2 steals 3 8 A 2 blocks 4
Mit der Funktion spread() können wir die vier eindeutigen Werte in der Statistikspalte in vier neue Spalten umwandeln:
library (tidyr) #spread stat column across multiple columns spread(df2, key=stat, value=amount) player year assists blocks points steals 1 A 1 6 1 14 2 2 A 2 9 4 29 3
Zusätzliche Ressourcen
Das Ziel des Tidyr- Pakets besteht darin, „aufgeräumte“ Daten zu erstellen, die folgende Eigenschaften aufweisen:
- Jede Spalte ist eine Variable.
- Jede Zeile ist eine Beobachtung.
- Jede Zelle ist ein eindeutiger Wert.
Das Tidyr-Paket verwendet vier Hauptfunktionen zum Erstellen geordneter Daten:
1. Die Funktion spread() .
2. Die Funktion „gather()“ .
3. Die Funktion „separate()“ .
4. Die Unit() -Funktion.
Wenn Sie diese vier Funktionen beherrschen, können Sie aus jedem Datenrahmen „aufgeräumte“ Daten erstellen.