我之前问了一个问题:(Calculate Means and Covariances for large list of dataframes, replacing loops with lapply)。要将函数应用于列表Ccols
中的所有数据帧,我定义了一个由两个嵌套循环组成的函数,然后将其提供给lapply
,如下所示:
Power_f<- function(X){
list1<- list()
for (index in 2:ncol(X)){
list2<-list()
for (i in 1:length(X[,index]) ){
Data<- get(X[i,index])
list2[[i]] <-Data
}
Data2<- transform(Reduce(merge, lapply(list2, function(x) data.frame(x, rn = row.names(x)))), row.names=rn, rn=NULL)
list1[[index]]<- (Data2)
}
return(list1)
}
lapply(seq(from=2,to=(length(Ccols))), function(i) Power_f(Ccols[[i]]))
但是守则仍然需要很长时间才能运行。无论如何用for
替换所有lapply
循环?我已经检查了类似的问题,但所有解决方案都是特定于案例的并且不知所措。