В этом руководстве объясняется, как переименовывать столбцы фрейма данных в R, используя различные подходы.
Для каждого из этих примеров мы будем работать со встроенным набором данных mtcars в R.
Переименование первых n столбцов с использованием базы R
Всего в mtcars 11 имен столбцов:
#view column names of mtcars
names(mtcars)
# [1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear"
# [11] "carb"
Чтобы переименовать первые 4 столбца, мы можем использовать следующий синтаксис:
#rename first 4 columns
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
Обратите внимание, что R начинается с имени первого столбца и просто переименовывает столько столбцов, сколько вы ему предоставляете. В этом примере, поскольку имеется 11 имен столбцов, а мы предоставили только 4 имени столбца, были переименованы только первые 4 столбца. Чтобы переименовать все 11 столбцов, нам нужно предоставить вектор из 11 имен столбцов.
ПереименованиеСтолбцы по имени с использованием базы R
Если мы хотим переименовать определенный столбец в наборе данных mtcars , например столбец «wt», мы можем сделать это по имени:
#rename just the "wt" column in mtcars
names(mtcars)[names(mtcars)=="wt"] <- "weight"
names(mtcars)
#[1] "mpg" "cyl" "disp" "hp" "drat" "weight" "qsec" "vs"
#[9] "am" "gear" "carb"
Обратите внимание, что только столбец «вес» переименовывается в «вес», а все остальные столбцы сохраняют свои первоначальные имена.
ПереименованиеСтолбцы по индексу с использованием базы R
Мы также можем переименовать определенный столбец в наборе данных mtcars по индексу. Например, вот как переименовать второе имя столбца «cyl» по индексу:
#rename the second column name in mtcars
names(mtcars)[2] <- "cylinders"
names(mtcars)
# [1] "mpg" "cylinders" "disp" "hp" "drat" "wt"
# [7] "qsec" "vs" "am" "gear" "carb"
Обратите внимание, что только столбец «cyl» переименовывается в «цилиндры», а все остальные столбцы сохраняют свои первоначальные имена.
ПереименованиеСтолбцы с использованием dplyr
Другой способ переименовать столбцы в R — использовать функцию rename() в пакете dplyr.Основной синтаксис для этого следующий:
data %>% rename(new_name1 = old_name1, new_name2 = old_name2, ....)
Например, вот как переименовать имена столбцов «mpg» и «cyl» в наборе данных mtcars :
#install (if not already installed) and load dplyr package
if(!require(dplyr)){install.packages('dplyr')}
#rename the "mpg" and "cyl" columns
new_mtcars <- mtcars %>%
rename(
miles_g = mpg,
cylinder = cyl
)
#view new column names
names(new_mtcars)
# [1] "miles_g" "cylinder" "disp" "hp" "drat" "wt"
# [7] "qsec" "vs" "am" "gear" "carb"
Используя этот подход, вы можете переименовывать сразу столько столбцов, сколько хотите по имени.
ПереименованиеСтолбцы с использованием data.table
Еще один способ переименовать столбцы в R — использовать функцию setnames() в пакете data.table.Основной синтаксис для этого следующий:
setnames(data, old=c("old_name1","old_name2"), new=c("new_name1", "new_name2"))
Например, вот как переименовать имена столбцов «mpg» и «cyl» в наборе данных mtcars :
#install (if not already installed) and load data.table package
if(!require(data.table)){install.packages('data.table')}
#rename "mpg" and "cyl" column names in mtcars
setnames(mtcars, old=c("mpg","cyl"), new=c("miles_g", "cylinder"))
#view new column names
names(mtcars)
#[1] "miles_g" "cylinder" "disp" "hp" "drat" "wt"
#[7] "qsec" "vs" "am" "gear" "carb"
Используя этот подход, вы можете переименовывать сразу столько столбцов, сколько хотите по имени.