Изменить имя столбца данного DataFrame в R
Фрейм данных представляет собой табличную структуру с фиксированными размерами каждой строки и столбца. Это двумерный массив, подобный объекту, с числовыми, символьными или факторными данными. Каждый элемент, принадлежащий фрейму данных, индексируется уникальной комбинацией номера строки и столбца соответственно. Имена столбцов адресуются уникальными именами.
Способ 1: использование метода colnames()
Метод colnames() в R используется для переименования и замены имен столбцов фрейма данных в R.
Столбцы фрейма данных можно переименовать, указав новые имена столбцов в виде вектора. Новое имя заменяет соответствующее старое имя столбца во фрейме данных. Длина нового вектора-столбца должна быть эквивалентна исходному количеству столбцов. Изменения вносятся в исходный фрейм данных.
Синтаксис:
colnames(df) <- c(new_col1_name,new_col2_name,new_col3_name)
Пример:
R
# declaring the columns of data framedf = data.frame(col1 = c("A", "B", "C", "J", "E", NA,"M"),col2 = c(12.5, 9, 16.5, NA, 9, 20, 14.5),col3 = c(NA, 3, 2, NA, 1, NA, 0)) # printing original data frameprint("Original data frame : ")print(df) print("Renaming columns names ") # assigning new names to the columns of the data framecolnames(df) <- c("C1","C2","C3") # printing new data frameprint("New data frame : ")print(df) |
Выход:
[1] “Original data frame : “
col1 col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 J NA NA
5 E 9.0 1
6 <NA> 20.0 NA
7 M 14.5 0
[1] “Renaming columns names “
[1] “New data frame : “
C1 C2 C3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 J NA NA
5 E 9.0 1
6 <NA> 20.0 NA
7 M 14.5 0
1(A). Определенные столбцы фрейма данных также можно переименовать, используя индекс положения соответствующего столбца.
Синтаксис:
colnames(df)[col_indx] <- “new_col_name_at_col_indx”
Подход
- Создать фрейм данных
- Выберите столбец, который нужно переименовать по индексу
- Укажите подходящее имя
- Изменить с помощью функции colnames()
Пример:
R
# declaring the columns of data framedf = data.frame(col1 = c("A", "B", "C", "J", "E", NA,"M"),col2 = c(12.5, 9, 16.5, NA, 9, 20, 14.5),col3 = c(NA, 3, 2, NA, 1, NA, 0)) # printing original data frameprint("Original data frame : ")print(df) print("Renaming columns names ") # assigning the second column name to a new namecolnames(df)[2] <- "new_col2" # printing new data frameprint("New data frame : ")print(df) |
Выход:
[1] “Original data frame : “
col1 col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 J NA NA
5 E 9.0 1
6 <NA> 20.0 NA
7 M 14.5 0
[1] “Renaming columns names “
[1] “New data frame : “
col1 new_col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 J NA NA
5 E 9.0 1
6 <NA> 20.0 NA
7 M 14.5 0
1(Б). Имена столбцов также можно заменить с помощью функции which(names(df)) , которая ищет столбец с указанным старым именем, а затем заменяет его новым экземпляром указанного имени.
Синтаксис:
colnames(dataframe)[which(names(dataframe) == “oldColName”)] <- “newColName”
Подход
- Создать фрейм данных
- Выберите имя столбцов, которые нужно изменить
- Укажите подходящее имя
- Используйте функцию
Пример:
R
# declaring the columns of data framedf = data.frame(col1 = c("A", "B", "C", NA,"M"),col2 = c(12.5, 9, 16.5, 20, 14.5),col3 = c(NA, 3, 2, NA, 0)) # printing original data frameprint("Original data frame : ")print(df) print("Renaming columns names ")# assigning the second column name to a new name colnames(df)[2] <- "new_col2" # printing new data frameprint("After changing the data frame col2 name : ")print(df) # replacing first column namecolnames(df)[which(names(df) == "col1")] <- "new_col1" # printing new data frameprint("After changing the data frame col1 name : ")print(df) |
Выход
[1] “Original data frame : “
col1 col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 <NA> 20.0 NA
5 M 14.5 0
[1] “Renaming columns names “
[1] “After changing the data frame col2 name : “
col1 new_col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 <NA> 20.0 NA
5 M 14.5 0
[1] “After changing the data frame col1 name : “
new_col1 new_col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 <NA> 20.0 NA
5 M 14.5 0
Способ 2: использование метода setNames()
Метод setNames() в R также можно использовать для присвоения новых имен столбцам, содержащимся в списке, векторе или кортеже. Изменения должны быть сохранены в исходном фрейме данных, потому что они не сохраняются.
Синтаксис:
setnames(df, c(names of new columns))
Подход
- Создать фрейм данных
- Переименовать столбец с помощью функции
- Показать измененный фрейм данных
Пример:
R
# declaring the columns of data framedf = data.frame(col1 = c("A", "B", "C", NA,"M"),col2 = c(12.5, 9, 16.5, 20, 14.5),col3 = c(NA, 3, 2, NA, 0)) # printing original data frameprint("Original data frame : ")print(df) # print("Renaming columns names ")# renaming all the column names of data framedf <- setNames(df, c("changed_Col1","changed_Col2","changed_Col3")) print("Renamed data frame : ")print(df) |
Выход
[1] “Original data frame : “
col1 col2 col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 <NA> 20.0 NA
5 M 14.5 0
[1] “Renamed data frame : “
changed_Col1 changed_Col2 changed_Col3
1 A 12.5 NA
2 B 9.0 3
3 C 16.5 2
4 <NA> 20.0 NA
5 M 14.5 0