在迭代算法中,我在每个步骤中确定一个、几行或不考虑进一步计算的行。为了存储感兴趣的行,我必须绑定两个变量:X.id 和 X.val。我目前使用:
cbind(X.id,X.val)
当 X.id 和 X.val 都是矩阵时,它工作正常:
X.id <- matrix(1,nrow=2,3)
X.val <- matrix(1,nrow=2,1)
cbind(X.id,X.val)
[,1] [,2] [,3] [,4]
[1,] 1 1 1 1
[2,] 1 1 1 1
但不是当他们有一排时:
X.id <- c(1,1,1)
X.val <- matrix(1,nrow=1,1)
cbind(X.id,X.val)
这给出了以下错误:
In cbind(c(1, 1, 1), matrix(1, nrow = 1, 1)) : number of rows of result is not a multiple of vector length (arg 1)
当行数为 0,1 和 n 时,建议的解决方案应该有效,同时保留矩阵的维数!