我是R的新手,我正在创建一个闪亮的应用程序来读取csv和过滤数据 . 我正在读取csv文件,然后使用列名和唯一值创建带循环的下拉列表:
output$dropdowns <- renderUI({
if (is.null(x())) {
return(NULL)
}
lapply(1:ncol(x()), function(i) {
selectInput(names(x()[i]), names(x()[i]), c("ALL", unique(as.character(x()[,i]))))
})
我现在正试图根据用户的输入过滤数据 . 为了得到输入,我试图遍历名称( names(x)[i]
),这是selectinput的ID并获取值 . 但每当我使用 input$names(x)[i]
时,我都会收到以下错误:
Error: attempt to apply non-function.
我试图使用实际的 Headers (例如输入$ testHeader)测试这个,这很好 . 但是当我尝试对变量做同样的事情时,例如:
a < - "testHeader"
print(input$a).
这返回NULL . 我假设它正在寻找ID为“a”的selecinput而无法找到它 . 但是我没有想到怎么办?
任何帮助都会很棒 .
谢谢 .
1 回答
input
只是一个reactivevalues对象,因此您可以使用[[
: