2016-04-26 5 views
7

Ich verwende R auf einem Netzwerkcomputer, auf dem ich keinen Schreibzugriff auf die meisten Speicherorte auf dem C-Laufwerk habe. Meine IT-Abteilung hat jedoch entschieden, das gesamte CRAN-Repository in den Standardspeicherort für die Bibliothek auf Laufwerk C: zu laden. Ich würde es vorziehen, meine Pakete selbst zu verwalten und einen Speicherort auf meinem Netzwerklaufwerk zu haben, auf dem ich installieren kann, aber ich versuche, R dazu zu bringen, den Laufwerksort vollständig zu ignorieren und zu vergessen.Wie ändern und entfernen Sie den Standard-Bibliotheksort?

Ich habe versucht, eine .Rprofile Datei zu erstellen, um den Speicherort der Bibliothek festzulegen, aber egal was ich tue, scheint .libPaths() den Standardspeicherort nicht zu vergessen. Ich habe folgendes versucht:

.Library <- file.path("N:/My Documents/R/win-library/3.2") 
.Library.site <- file.path("N:/My Documents/R/win-library/3.2") 
.lib.loc <- file.path("N:/My Documents/R/win-library/3.2") 
.libPaths(.libPaths()) 

Wo der Weg, auf dem N-Laufwerk ist der neue Standort ich der nur Bibliothekspfad sein will. Aber wenn ich R neu starten und laufen .libPaths() ich dies noch sehen:

[1] "\\\\fileu/users$/username/My Documents/R/win-library/3.2" 
[2] "C:/Program Files/R/R-3.2.4/library" 

(On a side note, ich versuche, von der symbolischen zu wechseln ‚\ fileu‘ Verweis auf eine Bezugnahme auf die N-Laufwerk.)

ich weiß, es habe auf diesem in der Vergangenheit (zB here), aber das besondere Problem ist, ich habe gefragt ähnliche Fragen gewesen, dass es ist nicht die Lage C-Laufwerks zu vergessen. Ich kann das anscheinend nicht löschen. Jede Hilfe würde sehr geschätzt werden!

+1

Verwenden Sie Raw R oder eine Schnittstelle über RStudio ? RStudio hat seine eigenen Pfade zu setzen ... –

+0

ist nicht das, was Sie wollen? Es sieht zuerst in '/ my docs/...', dann im Standard '/ program files/...' wenn nicht gefunden. Der Standard ist, wo all deine Pakete einschließlich der Basis leben. Wenn du diese nicht in deinem neuen libpath und keinen libpath-Pfad hast, wo wirst du dann diese Pakete bekommen? – rawr

+0

Es wäre wahrscheinlich klüger, eine Teilmenge von Paketen zu behalten, die Ihnen in Ihrem neuen Ordner am meisten am Herzen liegen. Auf diese Weise können Sie sie auf dem neuesten Stand halten, müssen sich aber nicht um die vielen Pakete kümmern, die Sie nie (direkt) verwenden. – lmo

Antwort

6

Hier sind Drachen.

assign(".lib.loc", "\your\preferred\library", envir = environment(.libPaths)) 
+0

Nun, ich habe auch gelesen, dass die Einstellung .lib.loc direkt nicht unterstützt wird, aber es hatte auch den Vorteil, tatsächlich erfolgreich zu arbeiten. Also markiere ich das als die richtige Antwort. Danke, @ Andrie! –

+0

Diese Antwort scheint veraltet zu sein, '.lib.loc' gibt' Error: object 'zurück. .lib.loc' not found' und '? .lib.loc' verweist mich auf eine Liste nicht mehr funktionierender Funktionen:' Die Funktionen oder die hier aufgeführten Variablen sind nicht mehr Teil von R, da sie nicht mehr benötigt werden –

1

Wenn Sie Ihre Bibliothek Standort ändern möchten permanent mit diesem Befehl: .libPaths ("drive:/Standort/location")

Wenn Sie Ihre Bibliothek Standort für die jeweilige Sitzung ändern, in RStudio (zB für eine temporäre Änderung), verwenden Sie: assign (". Lib.loc", "Laufwerk:/location/location", envir = environment (.libPaths))

Verwandte Themen