问题描述
我有两个大名单,
我想使用imputemodel中每个列表的公式在每个数据帧上应用rpart函数。如何循环执行1000次而不必像下面这样写每一行?
list1=list(lapply(imputemodel[[1]],rpart,data=train[[1]]))
list2=list(lapply(imputemodel[[2]],data=train[[2]]))
list3=list(lapply(imputemodel[[3]],data=train[[3]]))
...
list1000 = ...
combined list <- c(list1,list2,list3,....,list1000)
解决方法
尝试使用Map
:
combined_list <- Map(rpart,imputemodel,data = train)
使用lapply
,您可以遍历索引,子集模型和数据。
combined_list <- lapply(seq_along(imputemodel),function(i)
rpart(imputemodel[[i]],train[[i]]))