[英]Create a matrix with loop in R
我试图在R中创建一个循环,将矩阵中的2行中的0替换为1,但是我只能创建一个编号为1的矩阵。我不知道如何快速正确地实现它!
R代码
i<-1
r<-1
l<-1
repeat{
while(i<3){
if(l<7) {
r<-rbind(r,1)
l<-l+1
}else{
r<-cbind(r,1)
i<-i+1
l<-1
}
}
}
开始示例矩阵
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
最终矩阵:
1 0 0
1 0 0
0 1 0
0 1 0
0 0 1
0 0 1
是否需要使用for
循环? R使用向量化语句的效果最佳,例如:
diag(3)[rep(1:3, each = 2), ]
# [,1] [,2] [,3]
# [1,] 1 0 0
# [2,] 1 0 0
# [3,] 0 1 0
# [4,] 0 1 0
# [5,] 0 0 1
# [6,] 0 0 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.