【发布时间】:2017-09-01 22:23:26
【问题描述】:
我正在尝试生成一个矩阵,其中每个元素都是长度为 2 的向量,然后自动填充向量。到目前为止我所拥有的是:
dat <- matrix(list(vector("numeric",2)),3,3)
dat
## [,1] [,2] [,3]
## [1,] Numeric,2 Numeric,2 Numeric,2
## [2,] Numeric,2 Numeric,2 Numeric,2
## [3,] Numeric,2 Numeric,2 Numeric,2
我想填充这个空矩阵,使它看起来像这样:
[[,1]] [[,2]] [[,3]]
[[1,]] [1] 1 1 [1] 1 2 [1] 1 3
[[2,]] [1] 2 1 [1] 2 2 [1] 2 3
[[3,]] [1] 3 1 [1] 3 2 [1] 3 3
我可以使用代码dat[[1,1]] <- c(1,1) 手动子集和替换每个元素,我可以使用代码sapply(dat,"[", 1) 子集dat 的所有第一个向量元素,但是我不能用所需的替换这些向量元素值,例如sapply(dat,"[", 1) <- rep(1:3,3)(返回 could not find function "sapply<-" 错误)。
【问题讨论】: