具有双参数函数的for循环的更快替代

时间:2014-06-04 09:43:33

标签: r for-loop

我有一个名为sourcefiles的csv文件列表,我想将一个带有两个参数的函数应用于sourcefiles中的所有文件。这就是我现在正在做的事情:

 for (n in 1:length(sourcefiles)){
      clcc(DT, n)
    }

还有更好的方法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用lapply功能:

lapply(X=aList, FUN=aFunction, otherParameters)

此函数为aFunction的每个项目调用aList,将其作为第一个参数传递,将otherParameters作为其他参数传递。

这里的问题是你的函数clcc没有将源文件作为第一个参数,但有一个简单的解决方法。如果函数clcc的第一个参数的正式名称是DT(或其他),您可以通过设置它的名称来调用lapply:

lapply(X=sourcefiles, FUN=clcc, DT=DT)