r在一个循环中
我想将几个表作为一个输出输出。如果我使用循环将它们放在一个列表中,那么所有输出都等于最后一个。 例如:r在一个循环中,r,shiny,R,Shiny,我想将几个表作为一个输出输出。如果我使用循环将它们放在一个列表中,那么所有输出都等于最后一个。 例如: 库(闪亮) ui对于这样的用例,我通常使用lappy。这样,您就不会遇到惰性评估的问题 library(shiny) ui <- fluidPage( mainPanel( uiOutput("tables") ) ) server <- function(input, output) { output$tables <- renderUI({
库(闪亮)
ui对于这样的用例,我通常使用lappy
。这样,您就不会遇到惰性评估的问题
library(shiny)
ui <- fluidPage(
mainPanel(
uiOutput("tables")
)
)
server <- function(input, output) {
output$tables <- renderUI({
data=array(rnorm(150),c(10,5,3))
tfc = function(m){renderTable({m})}
lapply(1:3, function(i){tfc(data[,,i])})
})
}
shinyApp(ui = ui, server = server)
库(闪亮)
ui对于这样的用例,我通常使用lappy
。这样,您就不会遇到惰性评估的问题
library(shiny)
ui <- fluidPage(
mainPanel(
uiOutput("tables")
)
)
server <- function(input, output) {
output$tables <- renderUI({
data=array(rnorm(150),c(10,5,3))
tfc = function(m){renderTable({m})}
lapply(1:3, function(i){tfc(data[,,i])})
})
}
shinyApp(ui = ui, server = server)
库(闪亮)
ui要解决此问题,可以对函数参数进行求值:
tfc=函数(m){
力(m)
可渲染(m)
}
或
为每个循环迭代创建一个范围:
for (i in 1:3) {
local({
i <- i
result[[i]] <<- tfc(data[,,i])
})
}
for(1:3中的i){
本地的({
i要解决这个问题,可以对函数参数进行求值:
tfc=函数(m){
力(m)
可渲染(m)
}
或
为每个循环迭代创建一个范围:
for (i in 1:3) {
local({
i <- i
result[[i]] <<- tfc(data[,,i])
})
}
for(1:3中的i){
本地的({
我