我有一个包含以下内容的for循环:
for (i in 1:100) {
#calculate correlation
correlationList1a[[i]] <- sapply(seq(1,14),
function(x) cor(validationSetsA.list[[i]][,x], medianListA[[i]]))
correlationList2a[[i]] <- sapply(seq(1,14),
function(x) cor(validationSetsA.list[[i]][,x], medianListB[[i]]))
}
我该如何简化? correlationList1a
和correlationList2a
基本上做同样的事情,唯一不同的是correlation1a包含medianListA
而correlationList2a
包含medianListB
。
答案 0 :(得分:1)
看起来这是mapply
的情况。
mapply(function(x, y) apply(x[,seq(1,14)], 2, cor, y=y),
x = validationSetsA.list,
y = medianListA,
SIMPLIFY = FALSE)