Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在不使用for()的情况下填充矩阵_R_Matrix_Random - Fatal编程技术网

在不使用for()的情况下填充矩阵

在不使用for()的情况下填充矩阵,r,matrix,random,R,Matrix,Random,我有一个很长的矩阵,我想用rnorm1填充它,但它需要很多时间,不像下面这个示例。因为行和列的数量总是相等的,但是是动态的,所以有其他方法吗 my <- matrix(c(0), nrow= 3, ncol = 3) for (i in 1:3){ for (j in 1:3){ my[i,j]<-rnorm(1) } } 为什么不做一些像: matrix(rnorm(500), ncol = 5) 我的实际函数不是rnorm,但我想在这里使用一些简单的方法。

我有一个很长的矩阵,我想用rnorm1填充它,但它需要很多时间,不像下面这个示例。因为行和列的数量总是相等的,但是是动态的,所以有其他方法吗

my <- matrix(c(0), nrow= 3, ncol = 3)
for (i in 1:3){
  for (j in 1:3){
    my[i,j]<-rnorm(1)
  }
  }

为什么不做一些像:

matrix(rnorm(500), ncol = 5)

我的实际函数不是rnorm,但我想在这里使用一些简单的方法。如果您的函数生成的数据与rnorm类似,那么它的工作原理是相同的。列数和行数必须始终相同。这将生成5列和100列rows@firmo23如果您的函数是矢量化的,那么这种方法将起作用。如果您的函数没有矢量化,那么使用矢量化将其矢量化,这种方法将起作用。但矢量化只是循环隐藏——如果你的函数很慢,你就无法根据需要多次调用它。将数字放入矩阵很快。调用你的函数太慢了。@firmo23我只是以这些数字为例,你可以随心所欲地使用它们。正如gregor所说,您可以对函数进行矢量化,也可以从函数中生成所需的值,然后将其粘贴到带有预定义列的矩阵中。