So skalieren sie nur numerische spalten in r (mit beispiel)
Sie können die folgende Syntax aus dem dplyr- Paket verwenden, um nur die numerischen Spalten eines Datenrahmens in R zu skalieren:
library (dplyr) df %>% mutate(across(where(is. numeric ), scale))
Das folgende Beispiel zeigt, wie Sie diese Funktion in der Praxis nutzen können.
Beispiel: Skalieren Sie nur numerische Spalten mit dplyr
Angenommen, wir haben den folgenden Datenrahmen in R, der Informationen über verschiedene Basketballspieler enthält:
#create data frame df <- data. frame (team=c('A', 'B', 'C', 'D', 'E'), dots=c(22, 34, 30, 12, 18), assists=c(7, 9, 9, 12, 14), rebounds=c(5, 10, 10, 8, 8)) #view data frame df team points assists rebounds 1 to 22 7 5 2 B 34 9 10 3 C 30 9 10 4 D 12 12 8 5 E 18 14 8
Angenommen, wir möchten die Skalierungsfunktion in R verwenden, um nur die numerischen Spalten des Datenrahmens zu skalieren.
Wir können dazu die folgende Syntax verwenden:
library (dplyr)
#scale only the numeric columns in the data frame
df %>% mutate(across(where(is. numeric ), scale))
team points assists rebounds
1 A -0.1348400 -1.153200 -1.56144012
2 B 1.2135598 -0.432450 0.87831007
3 C 0.7640932 -0.432450 0.87831007
4 D -1.2585064 0.648675 -0.09759001
5 E -0.5843065 1.369425 -0.09759001
Beachten Sie, dass die Werte in den drei numerischen Spalten ( Punkte , Assists und Rebounds ) skaliert wurden, während die Teamspalte unverändert blieb.
Technische Hinweise
Die Funktion „scale()“ in R verwendet die folgende grundlegende Syntax:
scale(x, center = TRUE , scale = TRUE )
Gold:
- x : Name des zu skalierenden Objekts
- center : ob der Mittelwert beim Skalieren subtrahiert werden soll. Der Standardwert ist TRUE.
- Skala : Ob beim Skalieren durch die Standardabweichung dividiert werden soll. Der Standardwert ist TRUE.
Diese Funktion verwendet die folgende Formel, um skalierte Werte zu berechnen:
skaliertes x = ( Original x – x̄) / s
Gold:
- original x : Der ursprüngliche x-Wert
- x̄ : Das Stichprobenmittel
- s : die Standardabweichung der Stichprobe
Dies wird auch als Datennormalisierung bezeichnet, bei der einfach jeder Originalwert in einen Z-Score umgewandelt wird.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben mit dplyr ausführen:
So wählen Sie mit dplyr Spalten nach Namen aus
So wählen Sie Spalten nach Index mit dplyr aus
So verwenden Sie select_if mit mehreren Bedingungen in dplyr