Mysql 对于RShiny中的循环:警告:";名称错误:0个参数传递给。。。这需要1“;
第一次使用RShiny/SQL,所以我肯定我误解了一个基本原理,但是没有一个文档是有用的。我正在努力:Mysql 对于RShiny中的循环:警告:";名称错误:0个参数传递给。。。这需要1“;,mysql,r,shiny,Mysql,R,Shiny,第一次使用RShiny/SQL,所以我肯定我误解了一个基本原理,但是没有一个文档是有用的。我正在努力: (1) 让用户选择加载哪个SQL表 (2) 提交字符串(蛋白质名称) (3) 返回所选表中的蛋白质名称 我已经很好地处理了前两个参数,但是在for循环中,我得到了“0个参数传递给了需要一个参数的“names”,我不知道为什么。我的代码: 用户界面: >库(闪亮) ui我猜你的名字会有冲突。考虑将文本输入名称< /代码>重命名为唯一的。< /P> > names() Error in na
(1) 让用户选择加载哪个SQL表
(2) 提交字符串(蛋白质名称)
(3) 返回所选表中的蛋白质名称 我已经很好地处理了前两个参数,但是在for循环中,我得到了“0个参数传递给了需要一个参数的“names”,我不知道为什么。我的代码:
用户界面:
>库(闪亮)
ui我猜你的名字会有冲突。考虑将文本输入<代码>名称< /代码>重命名为唯一的。< /P>
> names()
Error in names() : 0 arguments passed to 'names' which requires 1
library("shiny")
library("DBI")
library("dplyr")
library("dbplyr")
library('pool')
loadData <- function(table) {
db <- dbConnect(MySQL(), dbname = "knoenerdb", host = "localhost",
user = "root",
password = "blahblah")
query <- sprintf("SELECT * FROM %s", table)
chosendata <- dbGetQuery(db, query)
dbDisconnect(db)
}
server <- function(input, output) {
chosendata <- observeEvent(input$button1, {
loadData(input$variable)
output$text1 <- renderText({paste("input is",input$variable)})})
names <- observeEvent( input$button2, {
names <- unlist(strsplit(input$names, ", "))
output$text2 <- renderText({paste("names are",names)})
})
observeEvent( input$button3, {
for(i in 1:length(names())){
if(names()[i] %in% chosendata()$proteins){
updated = c(updated,names()[i])
} else
updated = c(updated, "NULL")
}
output$text3 <- renderText({paste("matches are",updated)})
})
}
> names()
Error in names() : 0 arguments passed to 'names' which requires 1