Necesito devtools porque necesito la función install_github para instalar el paquete que no es CRAN digitalizar aquí . Instalé R
por
sudo apt-get install r-cran-robustbase
No instalé los paquetes de R de inmediato, como propone la respuesta de terdon, pero pude corregir los permisos:
sudo chmod 755 /usr/lib/R/site-library/
que creo que es la configuración predeterminada. Luego tuve que hacer lo que propone la respuesta de rcs, instalar con éxito devtools
y tpoisot/digitize
solo con
sudo apt-get install libssl-dev
sudo apt-get install libcurl4-openssl-dev
R
install.packages('httr')
install.packages('git2r')
install.packages('devtools')
library(devtools)
install.packages('readbitmap')
install_github('tpoisot/digitize')
La salida del último comando puede ser
Skipping install for github remote, the SHA1 (d16e28b9) has not changed since last install.
Use `force = TRUE` to force installation
Haz install_github('tpoisot/digitize', force = TRUE)
pero puedes obtener
...
'/usr/lib/R/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet \
CMD INSTALL '/tmp/RtmpX8eOLX/devtools57475d25a113/tpoisot-digitize-d16e28b' \
--library='/usr/local/lib/R/site-library' --install-tests
Error: ERROR: no permission to install to directory ‘/usr/local/lib/R/site-library’
Error: Command failed (1)
No pude encontrar una manera de instalar digitalizar sin sudo
. Entonces hazlo sudo R
, y repite lo mismo y obtienes
...
'/usr/lib/R/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet \
CMD INSTALL '/tmp/RtmpAlAT4e/devtools57e864e8c490/tpoisot-digitize-d16e28b' \
--library='/usr/local/lib/R/site-library' --install-tests
* installing *source* package ‘digitize’ ...
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (digitize)
Agregar masi
al grupo existente staff
para trabajar sin sudo
adentro R
; que necesita también en una instalación nueva
sudo usermod -a -G staff masi
Pruebas de la instalación.
Sigo la guía aquí . Comienzo
R
de$HOME/Pictures/
sinsudo
y utilizar su imagen de prueba aquí .Seleccione cuatro puntos en los ejes con el mouse
cal = digitize::ReadAndCal('Rintro-snail1.jpg')
- Haga
data.points = digitize::DigitData(col = 'red')
y elija manualmente los puntos que son sus puntos de datos
Cierro la ventana de Ploteo haciendo un segundo clic.
Hacer
df = digitize::Calibrate(data.points, cal, 0.1, 0.4, 0.0, 0.6)
y verdf
x y 1 71.50 NA 2 65.65 NA ... 24 26.80 NA
Haciendo
head(df)
x y 1 71.50 NA 2 65.65 NA 3 64.60 NA 4 60.85 NA 5 59.05 NA 6 58.15 NA
Detalles de instalación
Dentro
R
y fuerasudo
> .Library [1] "/usr/lib/R/library" > > .libPaths() [1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library" [3] "/usr/lib/R/library"
Comando
ls /usr/lib/R/library/
que no aparece en la listadevtools
. ¿Por qué?base compiler grid methods rpart survival boot datasets KernSmooth mgcv spatial tcltk class foreign lattice nlme splines tools cluster graphics MASS nnet stats translations codetools grDevices Matrix parallel stats4 utils
Mando
ls -la /usr/local/lib/R/
total 12 drwxrwsr-x 3 root staff 4096 touko 19 22:25 . drwxr-xr-x 5 root root 4096 touko 19 22:25 .. drwxrwsr-x 2 root staff 4096 touko 19 22:25 site-library
Mando
ls -la /usr/local/lib/
total 20 drwxr-xr-x 5 root root 4096 touko 19 22:25 . drwxr-xr-x 14 root root 4096 touko 19 22:13 .. drwxrwsr-x 4 root staff 4096 huhti 21 01:13 python2.7 drwxrwsr-x 3 root staff 4096 huhti 21 01:08 python3.5 drwxrwsr-x 3 root staff 4096 touko 19 22:25 R
Mando
R_LIBS_USER="/usr/local/lib/R/site-library/" R
R version 3.2.3 (2015-12-10) -- "Wooden Christmas-Tree" Copyright (C) 2015 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu (64-bit) ...
library(devtools)
se carga
Herramientas diferenciales
- Este proyecto es más popular y puede funcionar mejor https://github.com/markummitchell/engauge-digitizer
Motivos de errores anteriores
- Sin sistema limpio: sistemas que se actualizaron desde 14.04, 15.10, etc.
- Permisos / propietarios en mal estado debido a lo anterior.
- Errores propios en el proceso.
- No hay copias de seguridad en caso de falla.
- ...
- documentos faltantes
Sistema: Ubuntu 16.04 64 bit en una instalación limpia
Hardware: Dell PC 2013, Macbook Air 2013-mid, ...
fuente
devtools
través desudo R
, déjame correrlibrary(devtools)
desde una sesión R no sudo. Agregue el resultado de i).Library
ejecutar desde unaR
sesión normal y ii) desdesudo R
y iii) verifique undevtools
subdirectorio en la ruta proporcionada por esos comandos. En mi sistema, está en/usr/lib64/R/library/devtools/
.devtools
subdirectorio en/usr/lib/R/library
?library(devtools)
y cargar con éxito la biblioteca?.libPaths()
de R?/usr/local/lib/R/site-library
? Probablemente lo hagas. Si es así, vea mi respuesta (recientemente) actualizada.Respuestas:
httr
importa elopenssl
paquete que necesita como requisito del sistemalibssl-dev
(sudo apt install libssl-dev
)El
curl
paquete necesita como requisito del sistemalibcurl4-openssl-dev
:Por lo tanto, para instalarlo deberá ejecutar:
Luego comience un shell R con
sudo R
y:fuente
devtools
, si necesitainstall.packages('readbitmap')
, consulte el cuerpo de la versión final.Como regla general, ¡no solo cambia los permisos de los directorios del sistema! Para eso es el acceso raíz. Vuelva a colocar los permisos en la forma en que los encontró y ejecute la próxima vez
sudo R
yinstall.packages
desde el shell raíz resultante.Ahora, la razón por la que no puede instalar está allí, en la salida que muestra:
Aparentemente, como se explica por rcs , en Ubuntu, necesita instalar
libssl-dev
ylibcurl4-openssl-dev
primero.El siguiente problema es que la instalación R de su usuario raíz tiene
/usr/local/lib/R/site-library
como primer directorio en la salida de.libPaths
y que no está en las rutas de acceso de su usuario habitual. Como es la primera entrada para root, ahí es donde se instaló su biblioteca:Entonces, una solución simple es crear un archivo llamado
~/.Rprofile
y agregarle esta línea:Alternativamente, o adicionalmente, podría incluir una línea como
Eso le permitiría instalar bibliotecas en el directorio
/home/masi/Rlibs
(elija el nombre que desee) en el futuro y así evitar la necesidad de hacerlosudo R
.Alternativamente, puede establecer la variable de entorno
R_LIBS_USER
en/usr/local/lib/R/site-library/
(/home/masi/Rlibs
o en cualquier otro lugar donde se estén instalando sus bibliotecas). Simplemente agregue esta línea a su~/.profile
:fuente
R_LIBS_USER="/usr/local/lib/R/site-library/" R
y luego, en R, ejecutarlibrary(devtools)
..libPaths("/home/masi/Rlibs")
después de.libPaths("/usr/local/lib/R/site-library/")
eso, reemplazará la configuración original. Si desea agregar un directorio de biblioteca, debe ser.libPaths(c(.libPaths(), "/home/masi/Rlibs") )