set.seed(123)
B = matrix( c(5, 3, 3, 1, 5, 1,3,1,NA,NA), nrow=5, ncol=2)
m1<-matrix(nrow=5,ncol=2,data=runif(10))
m2<-matrix(nrow=5,ncol=2,data=runif(10))
m2[1,2]=NA; ml <- list(m1, m2)
ind <- sapply(unique(c(B)), function(x) which(B == x, arr.ind = TRUE))
re <- lapply(ind, function(x) lapply(ml, function(y) y[x]))
res=lapply(re, function(x) c(t(do.call(cbind, x))))
但我不知道哪个对应哪个。例如:res[[1]]
代表5, 3, or 1 in B
?有没有一种方法来命名B的函数类(编号)t
中的输出命令?如何忽略lapply中的NA?
你能在话你想要做什么解释?基于此输入的理想预期输出是什么样子? – Heroka
我的下跪反应是说使用na.rm = TRUE ......但我并不确定你的目标。 – user1945827
你可以在最后一行代码中使用'na.omit',如果目标是去除NA值 – akrun