我正在使用nested
文件进行一些回归分析。我拥有的代码类似于:
library(tidyverse)
library(purrr)
library(betareg)
# 1. Create dataframe ----
dt <- data.frame(Marker = as.factor(paste0('m', rep(seq(1,10), 10))),
Year = rep(1990:1999, each = 10),
Ahat = rnorm(100, 0.5, 0.1)) %>%
mutate(Group = case_when(
Marker %in% c("m1", "m2", "m3") ~ "A",
Marker %in% c("m4", "m5", "m6") ~ "B",
Marker %in% c("m7", "m8") ~ "C",
TRUE ~ "D"))
# 2 Nesting ----
nested_dt <- dt %>%
group_by(Group) %>%
nest()
# 3 Beta Regression Function
marker_model <- function(dt) {
betareg(Ahat ~ Year, data = dt)
}
# 4 Run Reg Model
models <- nested_dt %>% mutate(mod = map(data, marker_model))
它工作正常,但我现在想predicted
从不同的时间范围(例如,2000 年到 2010 年)获取值。使用普通文件(未嵌套)时,我可以使用以下方法轻松完成此操作:
fit <- betareg(formula = Ahat ~ Year, dt)
overtime <- data.frame(Year = seq(2000, 2010))
predict(fit, type = "response", newdata = overtime)
那么,有谁知道如何predict
在文件上使用这个功能nested
(models
在这种情况下)?
谢谢!