【问题标题】:Write Macro or shortcut for running the whole script编写宏或快捷方式来运行整个脚本
【发布时间】:2018-03-28 09:09:23
【问题描述】:

我在我的 R 脚本中有一个问题。我的脚本如下所示:

variable <- File1
number<- 1
#after that there are a view calculations

使用变量我选择 File1,这是一个包含我的计算值的数据表。 使用数字 i 解决我的“结果数据表”行,其中打印结果。所以我有 105 个文件。当我总是手动将变量更改为 File1、File2、... File 105 和从 1 到 2,3、...105 的数字时,一切正常,然后选择整个代码并运行它。

所以我的问题是,有没有比手动更改变量和数字 105 次更智能的解决方案?

感谢任何明智的建议。

【问题讨论】:

  • 第一步:把你的脚本变成一个函数,接受variablenumber作为参数并返回想要的结果。第二步:在存储结果的双循环中调用它(例如,两个嵌套的lapply循环)。
  • 您好 Roland,感谢您的评论。我不得不说,我是 R 的新手,所以我必须搜索如何实现你的想法。我以前从未写过函数,也没有太多时间……但是谢谢。我希望 R 中有一些捷径可以帮助我。
  • 抱歉,如果每个 R 用户想要比普通 Excel 用户做的更多,他们都必须知道如何编写函数。幸运的是,在 R 中编写函数非常容易,因为它力求成为一种函数式语言(这使得必须能够定义函数)。

标签: r macros shortcuts


【解决方案1】:

只要做这样的事情:

foo <- function(variable, number) {
   #after that there are a view calculations
   return(list(result1, result2, ...)) #no list needed if only one result is desired
}

#loops
result <- lapply(vector_of_filenames, function(variable) 
            lapply(vector_of_numbers, foo, variable = variable)
          )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-01
    • 1970-01-01
    • 2022-10-19
    • 1970-01-01
    • 2012-11-18
    • 1970-01-01
    • 2013-08-20
    相关资源
    最近更新 更多