Как преобразовать коэффициент в числовой формат в r (с примерами)


Мы можем использовать следующий синтаксис для преобразования фактор-вектора в числовой вектор в R:

 numeric_vector <- as. numeric (as. character (factor_vector))

Сначала мы должны преобразовать фактор-вектор в вектор символов, а затем в числовой вектор. Это гарантирует, что числовой вектор будет содержать фактические числовые значения, а не уровни факторов.

В этом руководстве представлено несколько примеров практического использования этой функции.

Пример 1. Преобразование вектора фактора в числовой

Следующий код показывает, как преобразовать вектор фактора в числовой вектор:

 #define factor vector
factor_vector <- factor(c(1, 5, 7, 8))

#convert factor vector to numeric vector
numeric_vector <- as. numeric (as. character (factor_vector))

#view class
class(numeric_vector)

[1] "digital"

Пример 2. Преобразование столбца коэффициента в числовой

Следующий код показывает, как преобразовать определенный столбец в фрейме данных фактора в числовой:

 #create data frame
df <- data. frame (a = factor(c(1, 5, 7, 8)),
b = c(28, 34, 35, 36))

#convert column 'a' from factor to numeric
df$a <- as. numeric (as. character (df$a))

#view new data frame
df

  ab
1 1 28
2 5 34
3 7 35
4 8 36

#confirm class of numerical vector
class(df$a)

[1] "digital"

Пример 3. Преобразование столбцов с несколькими факторами в числовые значения

Следующий код показывает, как преобразовать все столбцы факторов в фрейме данных факторов в числовые значения:

 #create data frame
df <- data. frame (a = factor(c(1, 5, 7, 8)),
                 b = factor(c(2, 3, 4, 5)),
                 c = c('A', 'B', 'C', 'D'),
                 d = c(45, 56, 54, 57))

#display classes of each column
sapply(df, class)

       abcd
"factor" "factor" "character" "numeric" 

#identify all factor columns
x <- sapply (df, is. factor )

#convert all factor columns to numeric
df[, x] <- as. data . frame ( apply (df[, x], 2, as.numeric ))

#display classes of each column
sapply (df, class)

        abcd
"numeric" "numeric" "character" "numeric"

Этот код внес следующие изменения в столбцы фрейма данных:

  • Столбец А: От почтальона к цифровым технологиям
  • Столбец Б: От почтальона к цифровым технологиям
  • Столбец c: без изменений (поскольку это был персонаж)
  • Столбец d: без изменений (поскольку он уже был числовым).

Используя функции apply() и sapply() , мы смогли преобразовать только столбцы факторов в числовые столбцы и оставить все остальные столбцы без изменений.

Дополнительные ресурсы

Как преобразовать символ в фактор в R
Как преобразовать фактор в символ в R
Как преобразовать символ в метку времени в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *