Как преобразовать символ в число в r (с примерами)
Мы можем использовать следующий синтаксис для преобразования вектора символов в числовой вектор в R:
numeric_vector <- as. numeric (character_vector)
В этом руководстве представлено несколько примеров практического использования этой функции.
Пример 1. Преобразование вектора символов в числовой.
Следующий код показывает, как преобразовать вектор символов в числовой вектор:
#create character vector
tanks <- c('12', '14', '19', '22', '26')
#convert character vector to numeric vector
numbers <- as. numeric (tanks)
#view digital vector
numbers
[1] 12 14 19 22 26
#confirm class of numerical vector
class (numbers)
[1] "digital"
Пример 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 numeric
df$a <- as. numeric (df$a)
#view new data frame
df
ab
1 12 28
2 14 34
3 19 35
4 22 36
5 26 40
#confirm class of numerical vector
class (df$a)
[1] "digital"
Пример 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"
#identify all character columns
chars <- sapply (df, is. character )
#convert all character columns to numeric
df[, chars] <- as. data . frame ( apply (df[, chars], 2, as.numeric ))
#display classes of each column
sapply (df, class)
abcd
"numeric" "numeric" "factor" "numeric"
Этот код внес следующие изменения в столбцы фрейма данных:
- Столбец a: От символьного к цифровому
- Столбец b: От символьного к цифровому
- Столбец c: Без изменений (поскольку это был фактор)
- Столбец d: без изменений (поскольку он уже был числовым).
Используя функции apply() и sapply() , мы смогли преобразовать только символьные столбцы в числовые столбцы и оставить все остальные столбцы без изменений.
Дополнительные ресурсы
Как преобразовать число в символ в R
Как преобразовать символ в фактор в R
Как преобразовать фактор в символ в R
Как преобразовать символ в метку времени в R