我有一个包含90个向量,长度为2048条记录的矩阵,我想用1:90的每个向量区分每个向量1:90。 结果将是90个矩阵,其中90个向量包含每个区分的结果。
我该怎么做?
我的试验是这样的:矩阵[1:90] - 矩阵[1:90],但结果只有1个矩阵,只有0,因为有一个简单的区分相同的矩阵。
先谢谢
答案 0 :(得分:0)
尝试
lst <- lapply(seq_len(ncol(m1)), function(i) m1[,i]-m1)
length(lst)
#[1] 90
dim(lst[[1]])
#[1] 2048 90
或者
lst2 <- Map(`-`, as.data.frame(m1), list(m1))
length(lst2)
#[1] 90
set.seed(24)
m1 <- matrix(sample(1:50, 90*2048, replace=TRUE), ncol=90)