0

我需要一些关于如何解决这个问题的建议。我有许多动物园对象,我想使用 Google 开发的同音词包在 R 中对其执行因果影响分析。为了自动化这个过程,我想在动物园对象上运行一个循环,并自动将结果保存在一个文件中,以便以 word 或 csv 格式导出。

到目前为止,我的解决方案是将动物园对象包含在动物园列表中

    zoolist<-list(ts1, 
                ts2,
                ts3 
                 )

然后运行一个for循环,如:

    for (i in zoolist)
{
  experiment_impact<-CausalImpact(i, 
                                  pre.period, 
                                  post.period, 
                                  model.args = list(nseasons = 7, season.duration = 1))
  summary(experiment_impact)
}

该代码似乎有效,但是我不知道如何以 csv 或 doc 或任何格式导出所有输出,只要它紧凑且可读。

任何想法?谢谢您的帮助!

4

1 回答 1

0

如果您只想捕获摘要,与打印到屏幕上的内容完全相同,则可以使用capture.output. 将循环中的第二行替换为:

capture.output(summary(experiment_impact), file = 'example.txt', append = T)

一个更优雅的解决方案可能是用于lapply对列表中的每个项目运行分析,以便最终得到一个输出项目列表:

resultList = 
  lapply(
    zoolist, 
    CausalImpact, 
    pre.period, 
    post.period,
    model.args = list(nseasons = 7, season.duration = 1)
  )

然后,您可以从列表中的每个 CausalImpact 对象中提取所需的值,并在 data.frame 中格式化这些值,您可以使用write.csv.

于 2020-05-01T04:04:48.357 回答