Подгруппа данных за несколько лет - PullRequest
0 голосов
/ 07 мая 2020

У меня есть набор данных с ежедневными данными о ценах за 2003–2019 годы. Я хочу создать подмножество из этого набора данных за определенные годы, скажем, за 2011–2015 годы. Я использую функцию подмножества, но когда я упоминаю интервал лет, данные с подмножеством содержат данные только для 1 из 7 дней вместо всех дней для указанных лет.

sub <- subset(data, format(as.Date(data$Date),"%Y")==c(2011:2015))

Я пробовал функцию разделения, но который создает список фреймов данных, которые я не умею использовать в ggplot или для статистического анализа.

sub <- split(data, format(as.Date(data$Date),"%Y")==c(2011:2015))

Есть ли лучший способ разделения на подмножества, чтобы я мог извлекать ежедневные данные за те годы, которые мне нужны?

1 Ответ

0 голосов
/ 07 мая 2020

Предполагая, что Date находится в стандартном формате, вы можете попробовать:

sub_data <- subset(data, as.integer(format(as.Date(Date),"%Y")) %in% 2011:2015)

Или с dplyr и lubridate:

library(dplyr)
library(lubridate)

sub_data <- data %>% filter(year(ymd(Date)) %in% 2011:2015)
...