Как преобразовать фактор в дату в R (с примерами)


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

Метод 1: используйте базу R

as. Date (factor_variable, format = '%m/%d/%Y')

Способ 2: Используйте смазку

library (lubridate)

mdy(factor_variable)

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

#create data frame
df <- data.frame(day=factor(c('1/1/2020', '1/13/2020', '1/15/2020')),
 sales=c(145, 190, 223))

#view data frame
df

 day sales
1 1/1/2020 145
2 1/13/2020 190
3 1/15/2020 223

#view class of 'day' variable
class(df$day)

[1] "factor"

Пример 1. Преобразование коэффициента в дату с использованием базы R

В следующем коде показано, как преобразовать переменную «день» во фрейме данных из фактора в дату с помощью функции as.Date() из базы R:

#convert 'day' column to date format
df$day <- as. Date (df$day, format = '%m/%d/%Y')

#view updated data frame
df

 day sales
1 2020-01-01 145
2 2020-01-13 190
3 2020-01-15 223

#view class of 'day' variable
class(df$day)

[1] "Date"

Обратите внимание, что переменная «день» была преобразована в формат даты.

Пример 2. Преобразование коэффициента в дату с помощью смазки

В следующем коде показано, как преобразовать переменную «день» из фактора в дату с помощью функции mdy() из пакета lubridate:

library (lubridate)

#convert 'day' column to date format
df$day <- mdy(df$day)

#view updated data frame
df

 day sales
1 2020-01-01 145
2 2020-01-13 190
3 2020-01-15 223

#view class of 'day' variable
class(df$day)

[1] "Date"

Переменная «день» была преобразована в формат даты.

Обратите внимание, что mdy() указывает формат месяц-день-год.

Примечание.Полную документацию по пакету lubridate можно найти здесь .

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

В следующих руководствах объясняется, как выполнять другие распространенные преобразования в R:

Как преобразовать дату в число в R
Как преобразовать число в символ в R
Как преобразовать категориальные переменные в числовые в R