2016-05-13 52 views
1

我创建了此表。一次运行100个模型,而不是一个一个地手工制作

dat <- matrix(rbinom(6*100, 6, 0.5), ncol=6) 

然后用一行从表中填写的“大小”语句来训练模型。

nn.sizes <- dat[1,] 
    sample.number <- length(dat2[[1]][,1]) 
    nns <- lapply(1:length(dat2), function(i){nn <- nnet(dat2[[i]][1:(sample.number),], dat3[[i]][(twindow+1):(length(dat3[[i]]))],size=nn.sizes[i], linout = TRUE)}) 

我的问题是,我只知道如何手动一个接一个,这意味着我必须运行100次。是否有办法运行一次

+0

将它包裹在'apply(dat,1,.....)'中,并且它将逐行对每一行运行,直到用尽行。 – Gopala

回答

2

您可以使用replicate()并且只在每个复制上创建一个单独的向量,而不是循环遍历矩阵。这只是循环表达块({}括号之间的代码),评估它100次。

replicate(100, { 
    nn.sizes <- rbinom(6, 6, 0.5) 

    <the rest of your code here> 

})