我有一个列表矩阵。
如何对每组列表应用函数,并返回与原始矩阵相同维度的矩阵?
我尝试使用
如何对每组列表应用函数,并返回与原始矩阵相同维度的矩阵?
我尝试使用
apply(X=data.matrix,MARGIN=c(1,2),function(x)min(x$P))
,但它返回了 Error in min(x$P) : (converted from warning) no non-missing arguments to min; returning Inf
编辑:
我拥有的数据类型示例为:data.matrix = list()
data.matrix$first = list()
data.matrix$second = list()
data.matrix$third = list()
data.matrix$first$a = data.frame(P=runif(3))
data.matrix$first$b = data.frame(P=runif(3))
data.matrix$first$c = data.frame(P=runif(3))
data.matrix$second$a = data.frame(P=runif(3))
data.matrix$second$b = data.frame(P=runif(3))
data.matrix$second$c = data.frame(P=runif(3))
data.matrix$third$a = data.frame(P=runif(3))
data.matrix$third$b = data.frame(P=runif(3))
data.matrix$third$c = data.frame(P=runif(3))
data.matrix = do.call(rbind,data.matrix)
我想在矩阵的每个元素上获取 min
(或其他内容)。
谢谢!
sapply(data.matrix, function(x) min(x$P))
。如果您需要填充最小值以替换数据框,则可以使用lapply(data.matrix, function(x) {x$P <- min(x$P);x})
。 - akrunapply
,但是没有进展。 - James