Zmiana domyślnej ścieżki biblioteki r przy użyciu.libPaths w Rprofile.strona nie działa
Używam R w systemie Windows, nie jako administrator. Gdy instaluję pakiet, następujące polecenie nie działa:
> install.packages("zoo")
Installing package(s) into ‘C:/Program Files/R/R-2.15.2/library’
(as ‘lib’ is unspecified)
Warning in install.packages :
'lib = "C:/Program Files/R/R-2.15.2/library"' is not writable
Aby zainstalować pakiet, muszę podać lokalizację biblioteki:
install.packages("zoo", lib="C:/software/Rpackages")
Aby załadować pakiet, muszę również określić lokalizację biblioteki:
library("zoo", lib.loc="C:/software/Rpackages")
Wszystko jest OK, ale chciałem zobaczyć, czy mogę jakoś dodać C:/software/Rpackages
do ścieżki biblioteki i tym samym nie muszę jej wpisywać za każdym razem.
Gdy szukałem w Internecie, znalazłem ten jeden sposób, aby jest to edycja pliku Rprofile.site
i dodanie linii
.libPaths("C:/software/Rpackages")
Jednak po zrobieniu tego i uruchomieniu RStudio, jest to wyjście, które otrzymuję
> .libPaths()
[1] "C:/Program Files/R/R-2.15.2/library" "C:/Program Files/RStudio/R/library"
.libPaths
polecenie, które dodałem do Rprofile.site
nie wydaje się mieć żadnego efektu! Dlaczego tak jest? A co ważniejsze, jak mogę rozwiązać problem, aby móc instalować i ładować pakiety bez wpisywania w lokalizacji biblioteki?
Uwaga: Jeśli uruchamiam RStudio to polecenie .libPaths()
wydaje się działać tak jak powinno do
.libPaths("C:/software/Rpackages")
> .libPaths()
[1] "C:/software/Rpackages" "C:/Program Files/R/R-2.15.2/library"
Czy to nie dziwne? 11 answers
Zazwyczaj staram się trzymać wszystkie moje pakiety w jednej bibliotece, ale jeśli chcesz dodać bibliotekę, dlaczego nie dodać nowej biblioteki do istniejącej biblioteki:
.libPaths( c( .libPaths(), "~/userLibrary") )
Potem dostaję:
> .libPaths()
[1] "/Library/Frameworks/R.framework/Versions/2.15/Resources/library"
[2] "/Users/davidwinsemius/userLibrary"
Funkcja .libPaths
jest nieco inna niż większość innych funkcji niegraficznych. Działa poprzez efekt uboczny. Funkcje Sys.getenv
i Sys.setenv
, które raportują i zmieniają zmienne środowiskowe R zostały rozdzielone, ale .libPaths
mogą raportować lub zmieniać swój cel. Informacje o R startup proces można przeczytać na stronie pomocy ?Startup
, A Materiał RStudio znajduje się na stronie: https://support.rstudio.com/hc/en-us/articles/200549016-Customizing-RStudio
W Twoim przypadku wygląda na to, że RStudio nie respektuje RPROFILE.Ustawienia witryny lub być może jest ich nadpisywanie przez czytanie .Ustawienie Rprofile z jednej z domyślnych wartości RStudio. Należy również wspomnieć, że wynik tej operacji dodaje również zawartość wywołań do .Library
i .Library.site
, co jest kolejnym powodem, dla którego RStudio - (lub jakikolwiek inny IDE lub zainstalowany w sieci -) hosted R może wykazywać inne zachowanie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-13 16:35:25
Właściwym rozwiązaniem jest ustawienie zmiennej środowiskowej R_LIBS_USER
na wartość ścieżki pliku do pożądanego folderu biblioteki, zamiast uzyskiwania RStudio do rozpoznawania pliku RPROFILE.plik strony.
Aby ustawić zmienną środowiskową R_LIBS_USER
w systemie Windows, przejdź do Panelu sterowania (Właściwości systemu - > zaawansowane właściwości systemu - > zmienne środowiskowe - > zmienne użytkownika) na żądaną wartość (ścieżkę do folderu biblioteki), np.
Variable name: R_LIBS_USER
Variable value: C:/software/Rpackages
Ustawienie R_LIBS_USER zapewni, że biblioteka wyświetli najpierw w górę .libPaths() niezależnie od uruchomienia RStudio bezpośrednio lub klikając prawym przyciskiem myszy plik i "Otwórz", aby uruchomić RStudio.
Rozwiązanie Rprofile może działać, jeśli RStudio jest zawsze uruchamiane przez kliknięcie skrótu RStudio. W tym przypadku, ustawienie domyślnego katalogu roboczego na katalog, w którym znajduje się twój Rprofile będzie wystarczające. Rozwiązanie Rprofile nie działa po kliknięciu na plik, aby uruchomić RStudio, ponieważ zmienia to katalog roboczy z dala od domyślny katalog roboczy.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-14 16:45:54
Udało mi się rozwiązać problem umieszczając kod w pliku .Rprofile
w domyślnym katalogu roboczym.
Najpierw znalazłem lokalizację domyślnego katalogu roboczego
> getwd()
[1] "C:/Users/me/Documents"
Potem użyłem edytora tekstu do napisania prostego pliku .Rprofile
z następującą linijką
.libPaths("C:/software/Rpackages")
Wreszcie, kiedy uruchamiam R
i uruchamiam .libPaths()
otrzymuję pożądane wyjście:
> .libPaths()
[1] "C:/software/Rpackages" "C:/Program Files/R/R-2.15.2/library"
[3] "C:/Program Files/RStudio/R/library"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-04 06:33:38
Jeśli nie masz uprawnień administratora, pomocne może być również otwarcie Rprofile.site
- pliku znajdującego się w \r-3.1.0 \ etc i dodanie:
.First <- function(){
.libPaths("your path here")
}
To ewaluuje polecenie .libPath()
bezpośrednio przy starcie
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-14 13:46:01
Https://superuser.com/questions/749283/change-rstudio-library-path-at-home-directory
Edit ~/.Renviron
R_LIBS_USER=/some/path
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-14 05:45:00
Znalazłem to, co myślę jest rozwiązaniem tutaj (dziękuję Carl Schwarz na SFU) za dodanie osobistej biblioteki, która jest na stałe (nie musisz definiować jej każdej sesji) rozpoznawane czy za pomocą R lub Rstudio, i RStudio traktuje to jako domyślne na moim komputerze Mac. Nie widziałem tego wyraźnie NA SO, więc podsumowałem kroki, które podali, Dla Windows, a następnie Dla Mac.
Dla systemu operacyjnego Windows 7:
-
Utwórz katalog na dysku, w którym chcesz mieć własną bibliotekę, np. C:\User\Rlibs (lub inny, do którego masz uprawnienia)
-
Wyszukaj / przejdź do "edytuj zmienną środowiskową dla swojego konta"
-
Kliknij " Nowy..."w środku okna" zmienne środowiskowe "
W oknie" Nowa zmienna użytkownika " wpisz R_LIBS dla "Nazwa zmiennej" i ścieżkę do utworzonego katalogu biblioteki osobistej, np. C:\User\Rlibs
-
Klik OK i powinieneś zobaczyć parę zmienna / wartość w oknie zmienne użytkownika
-
Kliknij ponownie OK
Teraz po uruchomieniu R (lub Rstudio) i wpisaniu polecenia .libPaths()
powinieneś zobaczyć bibliotekę osobistą, którą utworzyłeś, jak również bibliotekę systemową R.
Dla Mac:
W katalogu" Home "lub" username " utwórz folder o nazwie Rlibs
-
Uruchom aplikację Terminal
"Type": "content" sprawa pasuje.
Wpisz
ls -a
, aby zobaczyć pełną listę plików w katalogu, która powinna teraz zawierać .RenvrionSprawdź, czy .Plik Renviron {[27] } został poprawnie ustawiony:
more .Renviron
Uruchom R / Rstudio i wpisz {[0] } i powinieneś zobaczyć nową ścieżkę do swojej osobistej biblioteki.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-18 16:24:31
Miałem problemy ze zrozumieniem tego. gorkypl podał poprawne rozwiązanie powyżej, gdy ostatnio ponownie zainstalowałem mój OS & Rstudio, ale tym razem ustawienie mojej zmiennej środowiskowej nie rozwiązało.
Odinstalowałem zarówno R jak i Rstudio, tworząc katalogi C:\R i C:\Rstudio następnie ponownie zainstalowane oba.
Zdefiniuj zmienną użytkownika R_LIBS_USER do preferowanego katalogu (zgodnie z odpowiedzią gorkypla) i uruchom ponownie komputer, aby załadować zmienną użytkownika. Otwórz Rstudio, błędy powinny być zniknął.
Możesz również użyć Sys.setenv()
, aby zmodyfikować r_libs_user do Ścieżki alternatywnej biblioteki, co jest łatwiejsze i nie wymaga ponownego uruchamiania komputera.
Aby zobaczyć, na co jest ustawione R_LIBS_USER:
?Sys.getenv()
Czytanie help(Startup)
jest przydatne.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-10 21:24:57
Jeśli domyślna biblioteka pakietów została zmieniona po zainstalowaniu nowej wersji R lub w jakikolwiek inny sposób, możesz dołączyć obie biblioteki do użycia wszystkich pakietów za pomocą poniższych poleceń. Pobranie istniejącej ścieżki biblioteki:
.libPaths()
Teraz ustaw istniejącą i starą ścieżkę:
.libPaths(c(.libPaths(), "~/yourOldPath"))
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-14 07:07:37
Czytam readme. W tym wspomnieli o użyciu .libPaths () w wierszu poleceń, aby sprawdzić, które ścieżki tam są. Miałem wcześniej 2 ścieżki biblioteczne. Kiedy użyłem polecenia .libpath ("C:/Program Files / R / R-3.2.4 revised / library") tam, gdzie chciałem, zmienił ścieżkę do biblioteki. Kiedy pisałem .libPaths () w wierszu poleceń ponownie pokazała mi poprawną ścieżkę. Mam nadzieję, że to pomoże
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-07-08 04:11:22
getwd()
[1] "C:/Users/........./ software / My R studio " # skopiuj powyższy link z podwójnym odwróconym przecinkiem
.libPaths(new="C:/Users/............/software/My R studio")
#your default path will change for installing pakages
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-02-07 18:14:47
Przyglądałem się temu, ponieważ R miał problemy z instalacją w domyślnej lokalizacji i zamiast tego umieszczał pakiety w folderze tymczasowym. Okazało się, że jest to najnowsza aktualizacja Mcaffee Endpoint Security, która najwyraźniej ma problemy z R. możesz wyłączyć ochronę przed zagrożeniami podczas instalacji pakietów i będzie działać poprawnie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-09-18 23:15:47