问题描述
使用R,我编写了一个双循环,将值分配给一个空的2d矩阵,但事实证明,第7列和第1行始终为空白,而没有错误消息。
data2<-matrix(,nrow = 10,ncol = 10)
for(i in seq(0.01,0.1,0.01)){
for(j in seq(0.01,0.01)){
data2[i*100,j*100]<-i+j
}}
当我打印data2时:
data2
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] 0.02 0.03 0.04 0.05 0.06 0.08 NA 0.09 0.10 0.11
[2,] 0.03 0.04 0.05 0.06 0.07 0.09 NA 0.10 0.11 0.12
[3,] 0.04 0.05 0.06 0.07 0.08 0.10 NA 0.11 0.12 0.13
[4,] 0.05 0.06 0.07 0.08 0.09 0.11 NA 0.12 0.13 0.14
[5,] 0.06 0.07 0.08 0.09 0.10 0.12 NA 0.13 0.14 0.15
[6,] 0.08 0.09 0.10 0.11 0.12 0.14 NA 0.15 0.16 0.17
[7,] NA NA NA NA NA NA NA NA NA NA
[8,] 0.09 0.10 0.11 0.12 0.13 0.15 NA 0.16 0.17 0.18
[9,] 0.10 0.11 0.12 0.13 0.14 0.16 NA 0.17 0.18 0.19
[10,] 0.11 0.12 0.13 0.14 0.15 0.17 NA 0.18 0.19 0.20
当我进入调试模式并且当i = 0.01,j = 0.07时,发生了奇怪的事情:
Browse[2]> i
[1] 0.01
Browse[2]> j
[1] 0.07
Browse[2]> data2[i*100,j*100]
[1] 0.07
Browse[2]> data2[1,7]
[1] NA
Browse[2]> i*100
[1] 1
Browse[2]> j*100
[1] 7
我真的很困惑为什么data2 [i 100,j 100]无法到达第7列(也就是行),而是返回了data2 [1,6]的值。有人可以帮忙吗?我很感激。谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)