如何编写For循环函数来运行多个回归并存储结果?

如何编写For循环函数来运行多个回归并存储结果?,r,for-loop,regression,apply,broom,R,For Loop,Regression,Apply,Broom,我想请求的帮助:我正在尝试在循环中自动执行一系列任务。基本上,它运行一系列回归,存储结果并将其导出(写入)到csv文件中 问题: 我已经多次尝试运行“For”循环。我不知道如何根据当前的_date列为每个回归创建和命名新变量 数据说明: 这是一个表格格式的美国各州数据集(有点类似于整洁的数据)。 每一行或观测值都指特定日期的特定状态。 每列引用状态的一个属性 任务: 主要问题:自动化运行一系列回归的过程,按日期存储结果并将其导出(写入)到csv文件中 任务顺序: 运行回归 使用扫帚整理回归结果(

我想请求的帮助:我正在尝试在循环中自动执行一系列任务。基本上,它运行一系列回归,存储结果并将其导出(写入)到csv文件中

问题: 我已经多次尝试运行“For”循环。我不知道如何根据当前的_date列为每个回归创建和命名新变量

数据说明: 这是一个表格格式的美国各州数据集(有点类似于整洁的数据)。 每一行或观测值都指特定日期的特定状态。 每列引用状态的一个属性 任务: 主要问题:自动化运行一系列回归的过程,按日期存储结果并将其导出(写入)到csv文件中

任务顺序:

  • 运行回归
  • 使用扫帚整理回归结果(系数、标准误差和p值)
  • 按特定日期存储结果
  • 在另一个日期重复回归
  • 使用扫帚整理回归结果(系数和模型)
  • 按特定日期存储系数结果(系数、标准误差、p值)
  • 按特定日期存储回归模型(R平方等)的结果
  • …。。 最后,将所有结果导出到CSV文件中

    library(dplyr)
    library(broom)
    for(i in 1:length(current_date)){
        lmtest <- lm( outcome_var [[i]] ~ cumulative_var1_at_current_date + key_cat_var1, data = testdata)
        coeff_results<-tidy(lmtest)
        model_results<- glance(lmtest) 
        write.csv(coeff_results, “C:\\Users\\....combined_results.csv”)
        }
    
    库(dplyr)
    图书馆(扫帚)
    用于(i/1:长度(当前_日期)){
    
    lmtest在这种情况下使用循环对我来说没有意义。而且,日期似乎不会影响回归的输出。您想要这样的结果吗:

    库(dplyr)
    图书馆(扫帚)
    
    当前日期谢谢。要回答您关于数据如何依赖于“当前日期”的问题,请使用“结果变量”为每个日期附加特定值。变量“当前日期”包括从2月最后一周到5月第一周的日期。它包括每天的日期。我想为每个日期运行回归。示例:2月25日、2月26日、2月27日等的回归。澄清后的后续行动:代码有效-谢谢!我花了一些时间来解决日期的一些问题。
    格式=%d/%m/%y“
    工作不正常,无论我怎么做都显示为“NA”---其他要求我是否可以请您解释使用“唯一”的理由函数,并在%all_dates中循环使用当前日期%。通过这种方式,我将在将来学习如何运行类似的代码。我还注意到Stackoverflow中有几个线程,我也可以在那里发表评论。您可能有一些混合的日期格式(例如1/6/2000和1-6-2000),因此
    as.date()
    可能无法正确解析,因此需要NA。您也可以尝试
    dmy()
    函数从
    lubridate
    包中提取,以多种格式进行解析。至于第二个问题,您不需要对同一个日期运行两次,因为它会重复,并且会覆盖上一个日期。这就是为什么我使用
    unique()
    来获取所有唯一的日期。现在,因为您比较了标量(all_dates[I])对于向量(当前日期列),您不能使用等式
    ==
    ,而是需要%
    中的
    %。