RStudio Shiny ERROR: нет пакета под названием "shinydashboard"

Я пытаюсь получить http://rstudio.github.io/shinydashboard/ работу на моем ноутбуке Ubuntu 14.10.

Я выполнил инструкции по установке здесь:

http://rstudio.github.io/shinydashboard/get_started.html

Работают основные shiny страницы. Например:

http://localhost:3838/sample-apps/hello/

Но когда я пытаюсь использовать один из примеров shinydashboard, я получаю сообщение об ошибке:

http://localhost:3838/sample-apps/shiny/

ERROR: there is no package called "shinydashboard"

Если я запустил сеанс R в терминале, я могу загрузить shinydashboard библиотеки, и я получаю окно браузера с панелью инструментов, если я копирую + вставляю этот код в сеансе R:

library(shiny)
library(shinydashboard)

ui <- dashboardPage(
  dashboardHeader(),
  dashboardSidebar(),
  dashboardBody()
)

server <- function(input, output) { }

shinyApp(ui, server)

В нем говорится:

Attaching package: 'shinydashboard'

The following object is masked from 'package:graphics':

    box

> 
> ui <- dashboardPage(
+   dashboardHeader(),
+   dashboardSidebar(),
+   dashboardBody()
+ )
> 
> server <- function(input, output) { }
> 
> shinyApp(ui, server)

Listening on http://127.0.0.1:7093

Я попытался установить версию блестящего сервера, но это также не помогло. Вот мой sessionInfo():

> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8    
 [5] LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_GB.UTF-8   
 [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C       

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

other attached packages:
[1] shinydashboard_0.2.3 shiny_0.11.1.9002   

loaded via a namespace (and not attached):
 [1] bitops_1.0-6    devtools_1.7.0  digest_0.6.8    htmltools_0.2.6
 [5] httpuv_1.3.2    httr_0.6.1      mime_0.2        R6_2.0.1       
 [9] Rcpp_0.11.3     RCurl_1.95-4.5  stringr_0.6.2   tools_3.1.1    
[13] xtable_1.7-4   

Редакция:

Дополнительная информация:

ls -ld /usr/local/lib/R/site-library
drwxrwsr-x 11 root staff 4096 Mar  1 12:47 /usr/local/lib/R/site-library

Любые идеи, почему я не работаю над http://localhost:3838? Какой пакет необходимо установить как root?

Ответ 1

Проблема заключается в том, что блестящий сервер не может найти пакеты, которые вы устанавливаете, поскольку он запускает их как другого пользователя, который называется shiny. Этот пользователь создается при установке блестящего сервера

Самый простой (и безопасный IMHO) способ решить это - просто установить пакеты в качестве блестящего пользователя, выполнив следующие шаги.

  • Задайте пароль для пользователя с помощью sudo passwd shiny, введите и подтвердите пароль
  • Переключитесь на блестящую учетную запись, используя: su - shiny
  • Вызов R с помощью $ R (без sudo)
  • Установите необходимые пакеты, в этом случае: install.packages("shinydashboard")

Обратите внимание, что если у вас установлен rstudio-сервер на одном компьютере, вы можете выполнить шаги 2-4 с помощью этого интерфейса. Просто перейдите в тот же домен /ip и используйте: 8787 для интерфейса rstudio-server вместо: 3838 для блестящего сервера.

Ответ 2

В Ubuntu (и Debian) у вас есть несколько вариантов.

  • Сделайте ls -ld /usr/local/lib/R/site-library и обратите внимание, что каталог принадлежит группе adm. Сделайте себя частью этой группы или, наоборот, измените группу на ту, членом которой вы являетесь. Теперь вы можете просто написать в этот каталог, поэтому будет работать простой старый install.packages().

  • Используйте littler через sudo apt-get install littler и его удобный script (s) install.r и install2.r. Я использую их много из командной строки на многочисленных машинах на работе и дома. Тогда это так же просто, как install.r shinydashboard (как только вы скопировали или связали install.r где-то в своем $PATH).

  • Если вы настаиваете, используйте кувалду и запустите R как root. Это, как правило, не очень хорошая идея из-за эскалации разрешений.

Ответ 4

Этот ответ должен работать: fooobar.com/questions/551241/...

Теперь я понял, что это проблема с разрешениями при установке пакетов как R вместо sudo R.

Я мгновенно разрешил его, установив в качестве $USER и затем указав на библиотеку с помощью lib.loc:

library(shinydashboard, lib.loc="/home/avilella/R/x86_64-pc-linux-gnu-library/3.1")

Ответ 5

Чтобы установить библиотеку в sudo.

1- su # быть в режиме sudoer 2) введите пароль 3- R 4- install.packages('shinydashboard')

Ответ 6

У меня есть аналогичная проблема для пакета "d3heatmap". Он запускается в RStudio (на рабочем столе и в Интернете), но получает сообщение об ошибке в веб-браузере.

Единственное работоспособное решение - установить пакет из командной строки R под учетной записью "root".