Я создаю функцию цикла lm с результатами, ковариатами и экспозицией.Этот цикл создает вывод lm, а затем помещает его в пустой фрейм данных.Однако, когда я вызываю функцию, фрейм данных не создается, когда я помещаю создание пустого фрейма данных внутри функции.Когда я помещаю создание dataframe вне функции и запускаю его, он просто создает пустой dataframe, который не заполнен.Мне было интересно, как лучше это исправить.Ниже мой код:
outcomes<- c(out1,out2,out3)
exposure <-c(exp1,exp2,exp3)
my_covariates <- c(cov1,cov2,cov3)
reg_func <- function(data = ads, exposure, my_covariates, outcomes)
{
#creates empty dataframe
myreg_data <- data.frame()
for (i in seq_along(outcomes))
{
for (j in seq_along(exposure))
{
mylm <- lm(formula(paste(outcomes[i], " ~ ", paste(my_covariates,
collapse = " + "), " + " ,paste(exposure[j]))), data = ads)
ctable<-as.data.frame(coef(summary(mylm)))
ctable
dsa<-as.data.frame(cbind(ctable,Variable = rownames(ctable),
Outcome = outcomes[i],
Exposure = exposure[j],
Model="Cont.LR",
Model_n = paste(length(mylm$residuals))))
names(dsa)[4] <- "Pvalue"
rownames(dsa)<-NULL
myreg_data <- rbind(myreg_data,dsa)
return(myreg_data)
}}}
reg_func(data = ads, exposure = exposure, my_covariates =
my_covariates, outcomes = outcomes)