Как преобразовать символ в фактор в r (с примерами)
Мы можем использовать следующий синтаксис для преобразования вектора символов в вектор фактора в R:
factor_vector <- as. factor (character_vector)
В этом руководстве представлено несколько примеров практического использования этой функции.
Пример 1: Преобразование вектора символов в коэффициент
Следующий код показывает, как преобразовать вектор символов в вектор-фактор:
#create character vector
character_vector <- c('First', 'Second', 'Third')
#convert character vector to factor vector
factor_vector <- as. factor (character_vector)
#view factor vector
factor_vector
[1] First Second Third
Levels: First Second Third
#confirm class of factor vector
class(factor_vector)
[1] “factor”
Пример 2. Преобразование символьного столбца в коэффициент
Следующий код показывает, как преобразовать определенный столбец в символьном фрейме данных в коэффициент:
#create data frame
df <- data. frame (a = c('12', '14', '19', '22', '26'),
b = c(28, 34, 35, 36, 40))
#convert column 'a' from character to factor
df$a <- as. factor (df$a)
#view new data frame
df
ab
1 First 28
2 Seconds 34
3 Third 40
#confirm class of factor vector
class(df$a)
[1] “factor”
Пример 3. Преобразование нескольких столбцов из символьного в факторный
Следующий код показывает, как преобразовать все символьные столбцы в символьном фрейме данных в коэффициент:
#create data frame
df <- data. frame (a = c('12', '14', '19', '22', '26'),
b = c('28', '34', '35', '36', '40'),
c = as. factor (c(1, 2, 3, 4, 5)),
d = c(45, 56, 54, 57, 59))
#display classes of each column
sapply(df, class)
abcd
"character" "character" "factor" "numeric"
#convert all character columns to factor
df <- as. data . frame (unclass(df), stringsAsFactors = TRUE )
#display classes of each column
sapply(df, class)
abcd "factor" "factor" "factor" "numeric"
Этот код внес следующие изменения в столбцы фрейма данных:
- Столбец а: От персонажа до почтальона
- Столбец b: От символа к фактору
- Столбец c: Без изменений (поскольку это уже было фактором)
- Столбец d: без изменений (поскольку он был числовым).
Используя функции apply() и sapply() , мы смогли преобразовать только символьные столбцы в факторные столбцы и оставить все остальные столбцы неизменными.
Дополнительные ресурсы
Как преобразовать фактор в символ в R
Как преобразовать символ в число в R
Как преобразовать строки в даты в R