1
我在mongodb服务器中有一个csv文件。我用下面的代码片段,R,闪亮的动态数据处理和根据条件选择行
library(shiny)
shinyServer(
function(input,output,session)
{
dataf <-eventReactive(input$load, {
con <- mongo(collection = "recent", url = "mongodb:some url")
mydata <- con$find()
})
output$variables = renderUI({
selectInput('variables', 'Choose the device', outVar())
})
outVar <- reactive({
devices <- dataf()
ds <- devices$`Source`
return(unique(ds))
})
}
而且DATAF含有类似,
serial no source target r_no
1 A B 4
2 B C 9
3 A E 3
4 B A 6
5 A F 7
6 C G 2
现在读它R中闪亮,我想只选择对应于特定用户输入行时,由用户在ui.R上的下拉列表按钮中选择。
假设用户选择'A',那么我有整个只有A作为源的行。像,
serial no source target r_no
1 A B 4
3 A E 3
5 A F 7
我ui.R如下:
library(shiny)
library(mongolite)
shinyUI(fluidPage(
titlePanel(title=h3()),
sidebarLayout(
sidebarPanel(
uiOutput("variables"),
br(), width = 3),
mainPanel(uiOutput("tb"))
)
)
)
如何R中做到这一点闪亮?请告诉我。谢谢。
非常感谢。将尝试一下。是否应该包含一个提交按钮或者当用户更改源变量时mongo_results的值是否发生变化? – spencer
我尝试了它,并得到以下错误 - 没有一个活动的反应环境不允许操作。 (你试图做一些只能从被动表达或观察者内部完成的事情。) – spencer
对不起,那是我的错。我得到了所需的输出。你的回答很有魅力。非常感谢。假设我必须合并2个条件,是否使用'&&'类似输出< - mongo_results [which(mongo_results [,'source'] == input $ variables && mongo_results [,'source'] == input $ variables1),] ? – spencer