将矩阵n次重复到列表中 [英] Repeat matrix n-times into a list
本文介绍了将矩阵n次重复到列表中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个矩阵,想要在列表中重复n次. 显然,rep()函数不适用于矩阵,因此,有谁能提出一个比我下面的代码更好的建议呢?
I have a matrix that i want to duplicate n times in a list. Obviously the rep() function does not work on matrices, so does anyone have a good suggestion how to make this better than my code below?
谢谢!
# Create sample matrix
jwprox <- matrix(ncol=15,nrow=15)
# Create list of n-times matrices
jwprox <- list(jwprox,jwprox,jwprox)
推荐答案
您可以使用lapply()
n <- 3
x <- lapply(seq_len(n), function(X) jwprox)
str(x)
# List of 3
# $ : logi [1:15, 1:15] NA NA NA NA NA NA ...
# $ : logi [1:15, 1:15] NA NA NA NA NA NA ...
# $ : logi [1:15, 1:15] NA NA NA NA NA NA ...
或replicate()
:
xx <- replicate(n, jwprox, simplify=FALSE)
identical(x,xx)
# [1] TRUE
(FWIW,replicate()
只是sapply()
有时又是lapply()
的有时很方便的包装器.)
(FWIW, replicate()
is just a sometimes-handy wrapper for sapply()
and, in turn, lapply()
.)
这篇关于将矩阵n次重复到列表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文