Ich benötige devtools, da ich die Funktion install_github benötige , um das Nicht-CRAN-Paket digitalize hier zu installieren . Ich installierte R
durch
sudo apt-get install r-cran-robustbase
Ich habe Rs Pakete nicht sofort installiert, wie Terdons Antwort vorschlägt, aber ich konnte die Berechtigungen korrigieren:
sudo chmod 755 /usr/lib/R/site-library/
was ich denke ist die Standardeinstellung. Ich musste dann tun, was die Antwort von rcs vorschlägt, um erfolgreich zu installieren devtools
und tpoisot/digitize
aber nur mit
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')
Die Ausgabe des letzten Befehls kann sein
Skipping install for github remote, the SHA1 (d16e28b9) has not changed since last install.
Use `force = TRUE` to force installation
Tun install_github('tpoisot/digitize', force = TRUE)
Sie, aber Sie können bekommen
...
'/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)
Ich konnte keinen Weg finden, ohne zu digitalisieren sudo
. Also mach es sudo R
und wiederhole dasselbe und du bekommst
...
'/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)
masi
Zur vorhandenen Gruppe hinzufügen , staff
um ohne sudo
in zu arbeiten R
; was Sie auch in einer Neuinstallation brauchen
sudo usermod -a -G staff masi
Tests der Installation
Ich folge der Anleitung hier . Ich beginne
R
in$HOME/Pictures/
ohnesudo
und nutze ihr Testbild hier .Wählen Sie mit der Maus vier Punkte in den Achsen aus
cal = digitize::ReadAndCal('Rintro-snail1.jpg')
- Führen
data.points = digitize::DigitData(col = 'red')
Sie manuell Punkte aus, die Ihre Datenpunkte sind
Ich schließe das Plot-Fenster mit einem zweiten Klick.
Tun
df = digitize::Calibrate(data.points, cal, 0.1, 0.4, 0.0, 0.6)
und sehendf
x y 1 71.50 NA 2 65.65 NA ... 24 26.80 NA
Tun
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
Installationsdetails
In
R
und ohnesudo
> .Library [1] "/usr/lib/R/library" > > .libPaths() [1] "/usr/local/lib/R/site-library" "/usr/lib/R/site-library" [3] "/usr/lib/R/library"
Befehl,
ls /usr/lib/R/library/
der nicht aufgelistet wirddevtools
. Warum?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
Befehl
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
Befehl
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
Befehl
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)
wird geladen
Differentialwerkzeuge
- Dieses Projekt ist beliebter und kann besser funktionieren https://github.com/markummitchell/engauge-digitizer
Gründe für frühere Fehler
- Kein sauberes System: Systeme, die von 14.04, 15.10 usw. aktualisiert wurden.
- Berechtigungen / Eigentümer wegen der vorherigen Sache durcheinander gebracht.
- Eigene Fehler im Prozess.
- Keine Backups im Fehlerfall.
- ...
- fehlende Dokumente
System: Ubuntu 16.04 64-Bit in einer sauberen Installation
Hardware: Dell PC 2013, Macbook Air 2013-Mitte, ...
quelle
devtools
über eine Nicht-Sudo-R-Sitzungsudo R
laufenlibrary(devtools)
. Fügen Sie die Ausgabe von i).Library
Ausführen aus einer normalenR
Sitzung und ii) Aussudo R
und iii) Suchen nach einemdevtools
Unterverzeichnis in dem von diesen Befehlen bereitgestellten Pfad hinzu. Auf meinem System ist es bei/usr/lib64/R/library/devtools/
.devtools
Unterverzeichnis in/usr/lib/R/library
?library(devtools)
und erfolgreich laden?.libPaths()
vor R davonläufst?/usr/local/lib/R/site-library
? Das tust du wahrscheinlich. Wenn ja, siehe meine (neu) aktualisierte Antwort.Antworten:
httr
importiert dasopenssl
Paket, das als Systemanforderung benötigt wirdlibssl-dev
(sudo apt install libssl-dev
)Das
curl
Paket benötigt als Systemanforderunglibcurl4-openssl-dev
:Um zu installieren, müssen Sie Folgendes ausführen:
Starten Sie dann eine R-Shell mit
sudo R
und:quelle
devtools
, was Sie braucheninstall.packages('readbitmap')
, bitte auf den Körper für die endgültige Version sehen.In der Regel ändern Sie nicht nur die Berechtigungen von Systemverzeichnissen! Dafür ist Root-Zugriff gedacht. Legen Sie die Berechtigungen den Weg zurück Sie sie und das nächste Mal laufen gefunden
sudo R
undinstall.packages
aus dem resultierenden, Wurzel R Schale.Der Grund, warum Sie nicht installieren können, ist genau dort in der angezeigten Ausgabe:
Anscheinend müssen Sie, wie von rcs erklärt , unter Ubuntu zuerst installieren
libssl-dev
und installierenlibcurl4-openssl-dev
.Das nächste Problem ist, dass die R-Installation Ihres Root-Benutzers
/usr/local/lib/R/site-library
das erste Verzeichnis in der Ausgabe von ist.libPaths
und sich nicht in den Pfaden Ihres regulären Benutzers befindet. Da es der erste Eintrag für root ist, wurde dort Ihre Bibliothek installiert:Eine einfache Lösung besteht darin, eine Datei mit dem Namen zu erstellen
~/.Rprofile
und diese Zeile hinzuzufügen:Alternativ oder zusätzlich können Sie eine Zeile wie einfügen
Auf diese Weise können Sie
/home/masi/Rlibs
in Zukunft Bibliotheken in dem Verzeichnis installieren (wählen Sie den gewünschten Namen) und vermeiden so die Notwendigkeitsudo R
.Alternativ können Sie die Umgebungsvariable
R_LIBS_USER
auf/usr/local/lib/R/site-library/
(/home/masi/Rlibs
oder wo auch immer Ihre Bibliotheken installiert werden) setzen. Fügen Sie einfach diese Zeile zu Ihrem hinzu~/.profile
:quelle
R_LIBS_USER="/usr/local/lib/R/site-library/" R
ausführen und dann in R ausführenlibrary(devtools)
..libPaths("/home/masi/Rlibs")
nachdem.libPaths("/usr/local/lib/R/site-library/")
das wird die ursprüngliche Einstellung ersetzen. Wenn Sie ein Bibliotheksverzeichnis hinzufügen möchten, sollte es.libPaths(c(.libPaths(), "/home/masi/Rlibs") )