So benennen Sie Dataframe-Spalten in R um

Von Fabian
Kategorie: R
Tags: Operationen
Lesezeit: 3 Minuten

In diesem Artikel wird erläutert, wie Sie Dataframespalten in R mithilfe verschiedener Ansätze umbenennen.

Für jedes dieser Beispiele arbeiten wir mit dem integrierten Datensatz mtcars in R.

Umbenennen der ersten n Spalten mit Base R

Es gibt insgesamt 11 Spaltennamen in mtcars:

#Spaltennamen von mtcars anzeigen
names(mtcars)

# [1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear"
# [11] "carb"

Um die ersten 4 Spalten umzubenennen, können wir die folgende Syntax verwenden:

#ersten 4 Spalten umbenennen
names(mtcars) <- c("miles_gallon", "cylinders", "display", "horsepower")
names(mtcars)

#[1] "miles_gallon" "cylinders" "display" "horsepower" NA 
#[6]  NA             NA          NA        NA          NA 
#[11] NA 

Beachten Sie, dass R mit dem ersten Spaltennamen beginnt und einfach so viele Spalten umbenennt, wie Sie ihm zur Verfügung stellen. In diesem Beispiel wurden nur die ersten 4 Spalten umbenannt, da es 11 Spaltennamen gibt und wir nur 4 Spaltennamen angegeben haben. Um alle 11 Spalten umzubenennen, müssten wir einen Vektor mit 11 Spaltennamen angeben.

Umbenennung Spalten nach Namen unter Verwendung von Base R

Wenn wir eine bestimmte Spalte im mtcars-Dataset umbenennen möchten, z. B. die Spalte "wt", können wir dies nach Namen tun:

#Bennenen Sie nur die Spalte "wt" in mtcars um
names(mtcars)[names(mtcars)=="wt"] <- "weight"
names(mtcars)

#[1] "mpg" "cyl" "disp" "hp" "drat" "weight" "qsec" "vs" 
#[9] "am" "gear" "carb" 

Beachten Sie, dass nur die Spalte "wt" in "weight" umbenannt wird und alle anderen Spalten ihre ursprünglichen Namen behalten.

Umbenennung Spalten nach Index unter Verwendung von Base R

Wir können eine bestimmte Spalte im mtcars-Dataset auch nach Index umbenennen. So benennen Sie beispielsweise den zweiten Spaltennamen "cyl" anhang des Indexes um:

#Benennen Sie den zweiten Spaltennamen in mtcars um
names(mtcars)[2] <- "cylinders"
names(mtcars)

# [1] "mpg" "cylinders" "disp" "hp" "drat" "wt" 
# [7] "qsec" "vs" "am" "gear" "carb"

Beachten Sie, dass nur die Spalte "cyl" in "cylinders" umbenannt wird und alle anderen Spalten ihre ursprünglichen Namen behalten.

Umbenennung Spalten mit dplyr

Eine andere Möglichkeit, Spalten in R umzubenennen, ist die Verwendung der Funktion rename() im Paket dplyr. Die grundlegende Syntax hierfür lautet wie folgt:

data %>% rename(new_name1 = old_name1, new_name2 = old_name2, ....)

Hier erfahren Sie beispielsweise, wie Sie die Spaltennamen "mpg" und "cyl" im mtcars-Dataset umbenennen:

#installieren (falls noch nicht installiert) und laden des dplyr-Pakets
if(!require(dplyr)){install.packages('dplyr')}

#Benennen Sie die Spalten "mpg" und "cyl" um
new_mtcars <- mtcars %>% 
                rename(
                  miles_g = mpg,
                  cylinder = cyl
                  )

# neue Spaltennamen anzeigen
names(new_mtcars)

# [1] "miles_g" "cylinder" "disp" "hp" "drat" "wt" 
# [7] "qsec" "vs" "am" "gear" "carb" 

Mit diesem Ansatz können Sie beliebig viele Spalten gleichzeitig nach Namen umbenennen.

Umbenennung von Spalten mit data.table

Eine weitere Möglichkeit, Spalten in R umzubenennen, ist die Verwendung der Funktion setnames() im Paket data.table. Die grundlegende Syntax hierfür lautet wie folgt:

setnames(data, old=c("old_name1","old_name2"), new=c("new_name1", "new_name2"))

Hier erfahren Sie beispielsweise, wie Sie die Spaltennamen "mpg" und "cyl" im mtcars-Dataset umbenennen:

#installieren (falls noch nicht installiert) und laden Sie des Pakets data.table
if(!require(data.table)){install.packages('data.table')}

#Umbenennen der "mpg" und "cyl" Spaltennamen in mtcars
setnames(mtcars, old=c("mpg","cyl"), new=c("miles_g", "cylinder"))

# neue Spaltennamen anzeigen
names(mtcars)

#[1] "miles_g" "cylinder" "disp" "hp" "drat" "wt" 
#[7] "qsec" "vs" "am" "gear" "carb"  

Mit diesem Ansatz können Sie beliebig viele Spalten gleichzeitig nach Namen umbenennen.

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: