将矢量转换为矩阵

时间:2016-03-30 14:49:15

标签: r matrix

这是我的代码:

n <- 10
set.seed(100)
d <- rep(NA, n)
d[1] <- 0
y <- runif(n)
a <- 5

for (i in (2:(length(y)+1))) {
 d[i] <- d[i-1] + y[i-1]
}

store.x <- NULL
for(j in 1:a) {
 x <- runif(1, min = 0, max = sum(y))
  for (i in 1:(length(y))) {
   if(x <= d[i+1] && x > d[i]) {
    store.x[j] <- i
    break
  }
 }
}
store.x

现在store.x打印出7,9,4,6,8。我希望能够将这些放入矩阵,其中store.x打印的数字对应于列,行按顺序排列数字。所以第一个条目将在第1行第7列,接下来是第2行第9列,依此类推。我想从一个用n填充零的n×n矩阵开始,然后添加一个这些数字所在的行/列。我不知道该如何去做。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

因此,创建一个将被填充的矩阵range(X),然后将NA更改为零。

range(Q)==0
ans = 0 % // Values are not equal

range(B)==0
ans =  1 % // Values are equal

range(T)==0
ans = 0 % // Values are not equal

我添加的是以下逻辑

mt

如果在store.x中创建的数字不止一次存在,那么我们找到现有的条目(列对应于i,行将是非0的那个)。如果数字不存在,我们会找到没有条目的第一行并使用它。