Bunny, lautloscrew.com wrote:
Dear all,

I am trying to avoid a for loop here and wonder if the following is
possible:

I have a data.frame with 6 columns and i want to get a
cross-correlogram (by using ccf) . Obivously ccf only accepts two
columns at once and then returms a list. In fact, with a for loop i´d
do the following


for (i in 1:6) {

x[[i]]=ccf(mydf[,i],mydf[,6])


}

Is there any chance to the same with lapply? e.g. lapply(mydf,"ccf",
.... ) with ... respresenting the changing arguments for ccf
functions (note only the first argument does actually change)

You don't give a reproducible example, but since you want to apply a function to a list, the answer is yes. Just defining the function and the list is the trick, untested:

lapply(mydf[, 1:5], function(x) ccf(x, mydf[, 6]))

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to