Як створити послідовність дат за допомогою lubridate у r
Ви можете використовувати наступний базовий синтаксис, щоб створити послідовність дат за допомогою пакета lubridate в R:
seq(ymd(' 2022-01-01 '), ymd(' 2022-10-31 '), by=' 1 week ')
Цей конкретний приклад створить послідовність дат із 1/1/2022 до 10/31/2022 з інтервалом в один тиждень .
Щоб використовувати інший інтервал, просто замініть тиждень іншою одиницею часу, як-от день, місяць, квартал, рік тощо.
У наступних прикладах показано, як використовувати цей синтаксис для створення послідовності дат на практиці.
Приклад 1: Створення послідовності дат по днях
Наступний код показує, як створити послідовність дат із 01.01.2022 до 15.02.2022 на день:
library (lubridate)
#generate sequence of dates from 1/1/2022 to 2/15/2022 by day
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 1 day ')
[1] "2022-01-01" "2022-01-02" "2022-01-03" "2022-01-04" "2022-01-05"
[6] "2022-01-06" "2022-01-07" "2022-01-08" "2022-01-09" "2022-01-10"
[11] "2022-01-11" "2022-01-12" "2022-01-13" "2022-01-14" "2022-01-15"
[16] "2022-01-16" "2022-01-17" "2022-01-18" "2022-01-19" "2022-01-20"
[21] "2022-01-21" "2022-01-22" "2022-01-23" "2022-01-24" "2022-01-25"
[26] "2022-01-26" "2022-01-27" "2022-01-28" "2022-01-29" "2022-01-30"
[31] "2022-01-31" "2022-02-01" "2022-02-02" "2022-02-03" "2022-02-04"
[36] "2022-02-05" "2022-02-06" "2022-02-07" "2022-02-08" "2022-02-09"
[41] "2022-02-10" "2022-02-11" "2022-02-12" "2022-02-13" "2022-02-14"
[46] "2022-02-15"
Результатом є послідовність із 46 дат з 01.01.2022 по 25.02.2022.
Примітка . Замість введення 1 дня ви також можете просто ввести день .
Приклад 2: генерувати послідовність дат по тижнях
Наступний код показує, як створити послідовність дат з 01.01.2022 до 15.02.2022 на тиждень:
library (lubridate)
#generate sequence of dates from 1/1/2022 to 2/15/2022 by week
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 1 week ')
[1] "2022-01-01" "2022-01-08" "2022-01-15" "2022-01-22" "2022-01-29"
[6] "2022-02-05" "2022-02-12"
Результатом є послідовність із 7 дат з 01.01.2022 по 25.02.2022 на тиждень.
Ми також можемо використати наступний код, щоб створити послідовність дат із 01/01/2022 до 02/25/2022 з 2-тижневими інтервалами:
library (lubridate)
#generate sequence of dates from 1/1/2022 to 2/15/2022 by 2 weeks
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 2 week ')
[1] "2022-01-01" "2022-01-15" "2022-01-29" "2022-02-12"
Результатом є послідовність із 4 дат із 01.01.2022 до 25.02.2022 з інтервалом у 2 тижні.
Приклад 3: Створення послідовності дат на місяць
Наступний код показує, як створити послідовність дат з 01.01.2022 до 31.10.2022 на місяць:
library (lubridate)
#generate sequence of dates from 1/1/2022 to 10/31/2022 by month
seq(ymd(' 2022-01-01 '), ymd(' 2022-02-15 '), by=' 1 month ')
[1] "2022-01-01" "2022-02-01" "2022-03-01" "2022-04-01" "2022-05-01"
[6] "2022-06-01" "2022-07-01" "2022-08-01" "2022-09-01" "2022-10-01"
Результатом є послідовність із 10 дат з 01.01.2022 до 31.10.02.2022 на місяць.
Зауважте, що в цьому посібнику ми поділилися лише кількома прикладами того, як створити послідовність дат за допомогою пакета lubridate .
Ви можете змінити дату початку, дату завершення та інтервал, щоб створити потрібну послідовність дат.
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання в R:
Як перетворити дату на числову в R
Як витягти місяць із дати в R
Як додавати та віднімати місяці до дати в R