So replizieren sie zeilen in einem datenrahmen in r
Sie können die folgenden Methoden verwenden, um Zeilen in einem Datenrahmen in R mithilfe von Funktionen im dplyr- Paket zu replizieren:
Methode 1: Wiederholen Sie jede Zeile gleich oft
library (dplyr) #replicate each row 3 times df %>% slice(rep(1:n(), each = 3))
Methode 2: Replizieren Sie jede Zeile unterschiedlich oft
library (dplyr) #replicate the first row 3 times and the second row 5 times df %>% slice(rep(1:n(), times = c(3, 5)))
Die folgenden Beispiele zeigen, wie die einzelnen Methoden in der Praxis angewendet werden.
Beispiel 1: Replizieren Sie jede Zeile gleich oft
Angenommen, wir haben den folgenden Datenrahmen mit zwei Zeilen in R:
#create data frame
df <- data. frame (team=c('A', 'B'),
dots=c(10, 15),
rebounds=c(4, 8),
assists=c(2, 5))
#view data frame
df
team points rebound assists
1 to 10 4 2
2 B 15 8 5
Wir können die folgende Syntax verwenden, um jede Zeile des Datenrahmens dreimal zu wiederholen:
library (dplyr)
#create new data frame that repeats each row in original data frame 3 times
new_df <- df %>% slice(rep(1:n(), each = 3))
#view new data frame
new_df
team points rebound assists
1 to 10 4 2
2 to 10 4 2
3 to 10 4 2
4 B 15 8 5
5 B 15 8 5
6 B 15 8 5
Beachten Sie, dass jede Zeile im ursprünglichen Datenrahmen dreimal wiederholt wurde.
Beispiel 2: Replizieren Sie jede Zeile unterschiedlich oft
Angenommen, wir haben den folgenden Datenrahmen mit zwei Zeilen in R:
#create data frame
df <- data. frame (team=c('A', 'B'),
dots=c(10, 15),
rebounds=c(4, 8),
assists=c(2, 5))
#view data frame
df
team points rebound assists
1 to 10 4 2
2 B 15 8 5
Mit der folgenden Syntax können wir die erste Zeile dreimal und die zweite Zeile fünfmal wiederholen:
library (dplyr)
#create new data frame that repeats first row 3 times and second row 5 times
new_df <- df %>% slice(rep(1:n(), times = c(3, 5)))
#view new data frame
new_df
team points rebound assists
1 to 10 4 2
2 to 10 4 2
3 to 10 4 2
4 B 15 8 5
5 B 15 8 5
6 B 15 8 5
7 B 15 8 5
8 B 15 8 5
Beachten Sie, dass die erste Zeile des ursprünglichen Datenrahmens dreimal und die zweite Zeile fünfmal wiederholt wurde.
Verwandt: So verwenden Sie die Funktion „slice()“ in dplyr
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in dplyr ausführen:
So wählen Sie Spalten nach Index mit dplyr aus
So wählen Sie mit dplyr die erste Zeile nach Gruppe aus
So filtern Sie mit dplyr nach mehreren Bedingungen
So filtern Sie Zeilen, die eine bestimmte Zeichenfolge enthalten, mit dplyr