Приложение R Shiny, использующее ggvis, выдает ошибку во время загрузки

Я пытаюсь разместить блестящие приложения, использующие ggvis библиотеку, на shinyapps.io. При загрузке моего приложения функция runApp() не работает при создании необходимых пакетов для размещения приложения. Ошибка возникает при установке dplyr, которым пользуется ggvis. Dplyr, в свою очередь, использует Rcpp, и правильная версия не извлекается из RCRAN, хотя она доступна.

Может ли кто-нибудь помочь мне здесь? Есть ли способ указать версии пакета вручную, чтобы обойти эту проблему?

Код R и шаги, необходимые для воспроизведения проблемы:

## ui.R
shinyUI(bootstrapPage(
  ggvisOutput("p"),
  uiOutput("p_ui")
))

## server.R
shinyServer(function(input, output, session) {
  input_width <- reactive(input$width)

  mtcars %>% 
    ggvis(~mpg) %>% 
    layer_histograms(width = input_width) %>%
    bind_shiny("ggvis", "ggvis_ui")
})


## When located in folder with ui.R and server.R file:
library("shiny")
library("shinyapps")
deployApp() # command that fails

Выдержка из ошибки:

...
[2014-10-28T16:05:00.464944786+0000] Building R package: dplyr (0.3.0.2)
/mnt/packages/build /mnt
* installing to library ‘/usr/local/lib/R/site-library’
* installing *source* package ‘dplyr’ ...
** package ‘dplyr’ successfully unpacked and MD5 sums checked
** libs
Error: package ‘Rcpp’ 0.11.2 was found, but >= 0.11.3 is required by ‘dplyr’
* removing ‘/usr/local/lib/R/site-library/dplyr’
################################### End Log ################################### 
Error: Unhandled Exception: Child Task 2477816 failed: Error building image: Error building dplyr (0.3.0.2). Build exited with non-zero status: 1
Execution halted

Информация о сеансе:

> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252        LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base 

person filipsch    schedule 28.10.2014    source источник


Ответы (1)


Сообщение

Ошибка: найден пакет «Rcpp» 0.11.2, но для «dplyr» требуется> = 0.11.3.

указывает, что вы используете старую версию R (возможно, 3.0.2?), которая выполняет поиск в дереве, содержащем только Rcpp 0.11.2.

Исправить просто: обновите R. Затем установите зависимости, включая последнюю версию Rcpp с install.packages("Rcpp").

person Dirk Eddelbuettel    schedule 28.10.2014
comment
Я добавил sessionInfo моего сеанса R в свой вопрос. Похоже, я уже использую последнюю версию R. Я считаю, что ошибка возникает, когда пакет shinyapps пытается установить зависимости для размещения приложения в сети, поэтому она не должна быть связана с моей версией R. - person filipsch; 29.10.2014
comment
Попробуйте запустить install.packages("Rcpp"), чтобы обновить Rcpp пакет. Это устранило ошибку для меня. - person Mathew Hall; 29.10.2014
comment
Работал! Я должен был сам об этом подумать. Спасибо за быструю реакцию! - person filipsch; 29.10.2014
comment
Здравствуйте, я столкнулся с той же проблемой в своем приложении, затем обновил Rcpp с помощью install.packages () и теперь вижу другое сообщение об ошибке - как с моим приложением, так и с использованием кода, опубликованного @filipsch выше: в конце log (т.е. после установки пакетов и копирования файлов) Error: Unhandled Exception: Child Task 4638777 error: Unhandled Exception: 'NoneType' object has no attribute '__getitem__' .. есть идеи, что здесь может происходить? - person cainesap; 28.01.2015