A: как преобразовать символ в дату с помощью lubridate


Вы можете использовать различные функции из пакета lubridate в R для преобразования символьного столбца в формат даты.

Две наиболее распространенные функции включают в себя:

  • ymd() — преобразует символ в формате год-месяц-дата в дату.
  • mdy() – Преобразовать символ в формате месяц-день-год в дату

Следующие примеры показывают, как использовать функции ymd() и mdy() на практике.

Примечание . Полный список функций, которые можно использовать для преобразования символов в даты, в зависимости от формата, в котором находятся ваши даты, см. в документации по Lubridate .

Пример 1. Преобразование символа в дату с помощью ymd()

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

 #create data frame
df <- data. frame (date=c('2022-01-05', '2022-02-18', '2022-03-21',
                        '2022-09-15', '2022-10-30', '2022-12-25'),
                 sales=c(14, 29, 25, 23, 39, 46))

#view data frame
df

        dirty dates
1 2022-01-05 14
2 2022-02-18 29
3 2022-03-21 25
4 2022-09-15 23
5 2022-10-30 39
6 2022-12-25 46

#view class of date column
class(df$date)

[1] “character”

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

 library (lubridate)

#convert character to date format
df$date <- ymd(df$date)

#view updated data frame
df

        dirty date
1 2022-01-05 14
2 2022-02-18 29
3 2022-03-21 25
4 2022-09-15 23
5 2022-10-30 39
6 2022-12-25 46

#view updated class of date column
class(df$date)

[1] “Date”

Мы видим, что столбец даты теперь имеет класс Date вместо класса символов.

Пример 2. Преобразование символа в дату с помощью mdy()

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

 #create data frame
df <- data. frame (date=c('March 4, 2022', 'April 9, 2022', 'May 6, 2022',
                        'May 29, 2022', 'June 1, 2022', 'July 2, 2022'),
                 sales=c(14, 29, 25, 23, 39, 46))

#view data frame
df

           dirty date
1 March 4, 2022 14
2 April 9, 2022 29
3 May 6, 2022 25
4 May 29, 2022 23
5 June 1, 2022 39
6 July 2, 2022 46

#view class of date column
class(df$date)

[1] “character”

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

 library (lubridate)

#convert character to date format
df$date <- mdy(df$date)

#view updated data frame
df

        dirty dates
1 2022-03-04 14
2 2022-04-09 29
3 2022-05-06 25
4 2022-05-29 23
5 2022-06-01 39
6 2022-07-02 46

#view updated class of date column
class(df$date)

[1] “Date”

Мы видим, что столбец даты теперь имеет класс Date вместо класса символов.

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

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

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

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

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