在ShinyApps服务器中循环名称列表。R
在尝试为一个闪亮的项目创建一系列信息框的过程中,我遇到了一个循环,尽管我一直在尝试解决这个循环,但最终我还是将代码粘贴到了我需要的信息框上,这是难以置信的。 我最初的代码块是这样的在ShinyApps服务器中循环名称列表。R,r,loops,for-loop,shiny,infobox,R,Loops,For Loop,Shiny,Infobox,在尝试为一个闪亮的项目创建一系列信息框的过程中,我遇到了一个循环,尽管我一直在尝试解决这个循环,但最终我还是将代码粘贴到了我需要的信息框上,这是难以置信的。 我最初的代码块是这样的 output$**name** <- renderValueBox({ InformacionIE2 <- InformacionIE2.df[ which(InformacionIE2.df$INSTITUCIONEDUCATIVA==input$input_typen),] if (Infor
output$**name** <- renderValueBox({
InformacionIE2 <- InformacionIE2.df[ which(InformacionIE2.df$INSTITUCIONEDUCATIVA==input$input_typen),]
if (InformacionIE2$**name** =="Si") {
infoBox("Planos Electricos",
color = "green",
icon = icon("thumbs-up", lib = "glyphicon"),
print (InformacionIE2$**name**)
)
} else {
infoBox("**name** ",
color = "red",
icon = icon("thumbs-down", lib = "glyphicon"),
print (InformacionIE2$**name**)
)
}
})
output$**name**使用lappy
而不是for循环,它应该可以工作。不知道为什么:
lapply(**names**, function(name) {
output[[name]] <- <- renderValueBox({
InformacionIE2 <- InformacionIE2.df[ which(InformacionIE2.df$INSTITUCIONEDUCATIVA==input$input_typen),]
if (InformacionIE2[[name]] =="Si") {
infoBox("Planos Electricos",
color = "green",
icon = icon("thumbs-up", lib = "glyphicon"),
print (InformacionIE2[[name]])
)
} else {
infoBox(name,
color = "red",
icon = icon("thumbs-down", lib = "glyphicon"),
print (InformacionIE2[[name]])
)
}
})
})
lapply(**名称**,函数(名称){
输出[[name]]通过$string访问outout将不起作用。请尝试输出[[“name”]],与InformacionIE2相同。如果这没有帮助,则可复制的应用程序将很有帮助。