У меня есть файл с данными за три года.
df <- data.table( YEAR = c("1999", "1999", "2000", "1999","2000",
"2000","1999", "2000", "2001", "2001", "2001", "2001"),
Sex=c("M", "F","F", "M","M", "F","F", "F", "M", "F","F", "M"),
V3 = c(1,2,3,4,5,6,7,8,9,10,11,12),
V4 = rnorm(12, mean = 0, sd = 1))
Количество строк одинаково для каждого года. Я хочу создать 3 модели линейной регрессии, по одной на каждый год. Размер поезда, установленного для каждого года, должен быть одинаковым по годам. Например, 3 экземпляра для поезда и 1 для теста на каждый год. Я знаю, что есть много возможностей сделать это в течение одного года, например:
df_1999 <- df1 %>%
filter (YEAR == 1999)
samp <- sample(nrow(df_1999), 0.75 * nrow(df_1999))
train <- df[samp, ]
test <- df[-samp, ]
model_1999 <- lm(V4 ~ V3+ factor(Sex), data = df_1999)
, но я не знаю, как получить это сразу, чтобы соответствовать каждой модели lm.