-1
我在Shiny R中編寫了一個模擬應用程序,我被困在for循環中。
基本上,在一個反應我打電話,通過一些其他功能迴路的功能,如:
在server.R:
output.addiction <- reactive ({
SimulateMultiple(input$no.simulations, vectors(), parameters(), input$S.plus, input$q,
input$weeks, input$d, list.output)
})
功能:
SimulateMultiple <- function (no.simulations, vectors, parameters, S.plus, q, weeks, d, list.output) {
for (i in 1:no.simulations) {
thisi <- i
simulation <- SimulateAddictionComponents(vectors, parameters, S.plus, q, weeks, d) # returns list "simulation"
df.output <- BuildOutputDataframe(weeks, simulation, vectors) # returns "df.outout"
output.addiction <-BuildOutputList(df.output, simulation, list.output) # returns "output.addiction"
}
return(output.addiction)
}
而且,再次創建輸出列表的最後一個函數:
BuildOutputList <- function (df.output, simulation, list.output) {
addiction <- simulation$addiction
output.w.success <- list(df.output, addiction) # includes success data
output.addition <- c(list.output, list(output.w.success)) # adds the new data to the list
return(output.addition)
}
我在網上閱讀了很多關於這個問題的文章,我試圖隔離一些東西,介紹一個本地({})等,但它永遠不會起作用。最後,我得到一個長度爲1的列表。
我會永遠感激,如果你能幫助我 - 我已經在這個兩天了。
初始化'output.addiction' for循環,然後在這一行添加'[i]'undex:'output.addiction [i] <-BuildOutputList(df.output ...)' – zx8754
[Loop in R:如何保存輸出?](http://stackoverflow.com/questions/9689387/loop-in-r-how-to-save-the-outputs) – zx8754