我有一个10x1矩阵的矩阵coef=matrix(c(0),nrow=value)
。
我希望在每两个零(0)位置后填充一个。更清楚的是它应该是这样的:
[1,] 0
[2,] 0
[3,] 1
[4,] 1
[5,] 0
[6,] 0
[7,] 1
[8,] 1
[9,] 0
[10,] 0
所以在两个零之后有两个零。 我没有循环这样做,这非常简单,我可以用它来填充每2个位置。 到目前为止,这是简单的代码:
value=10
coef=matrix(c(0),nrow=value)
coef[1]=0
coef[2]=0
coef[3]=1
coef[4]=1
coef[5]=0
coef[6]=0
coef[7]=1
coef[8]=1
coef[9]=0
coef[10]=0
答案 0 :(得分:2)
我不确定我明白。为什么不直接创建相应的矩阵?而不是创建10x1零矩阵,然后替换条目。
matrix(rep(c(0, 1), each = 2, length.out = 10), nrow = 10)
# [,1]
# [1,] 0
# [2,] 0
# [3,] 1
# [4,] 1
# [5,] 0
# [6,] 0
# [7,] 1
# [8,] 1
# [9,] 0
#[10,] 0