2013-12-12 2 views
1

Я хочу, чтобы выбрать различные файлы CSV, присутствующие в каталоге с filenames<-list.files(pattern="\\.csv$")R блестящий создать имя файла (строка) из selectInput

, но я хотел бы построить имя файла с помощью конкатенации два входа пользователя. Поскольку файлы данных называются $ torre $ tipo, возможно ли создать строку, вставив два входа из ui.R? Я пробовал следующий код (и некоторые другие варианты), но безуспешно.

filename=renderText({ 
    paste0(input$torre,input$tipo) 
    }) 

    datos=reactive({ 
    read.csv(filename,header=T, sep=",",na.strings="-99.9") 
    }) 

Любая помощь будет оценена по достоинству.

Благодаря

ответ

1

Вы, вероятно, хотите, чтобы сохранить имя файла в виде строки с filename=paste(input$torre, input$tipo, sep=""). Обратите внимание на дополнительную опцию sep, которая имеет значение по умолчанию " " (В случае по умолчанию вложенные строки разделяются пробелом).

Для того, чтобы использовать его с блестящими, он должен быть преобразован в реактивном выражение:

filename <- reactive ({ 
    paste(input$torre, input$tipo, sep="") 
    }) 

Эта реактивная затем может быть использован в дальнейших функций

datos <- reactive ({ 
    read.csv(filename(),...) 
    }) 
+0

я пропускал() в режиме считывания. команда csv, глупая ошибка. Спасибо @drendor – pacomet

Смежные вопросы