Ten błąd wystąpił, gdy użyłem paczki w R do ładowania danych, w tym pakiecie użyto pakcage rJava
.Błąd w ls (envir = envir, all.names = private): nieprawidłowy argument "envir" w R
każdym razem uruchomić funkcję, błąd jest
Error in ls(envir = envir, all.names = private) :
invalid 'envir' argument
Ten pakiet Udowodniono bez problemu, po prostu jakiś problem ochrony środowiska w moim komputerze.
kiedy debugowany, stwierdziliśmy, że w ostatnim procesie przed ls(envir=envir,all.names = private)
zmienna envir
jest NULL
, która powinna być jakaś wartość NULL, ale nie myślę.
Po kilku próbach rozwiązałem problem, instalując za każdym razem rJava
. I dodatkowo, tylko gdy pojawi się błąd, zainstaluję "rJava", to zadziała. Jeśli zainstaluję na początku, nie zadziała. Myślę więc, że instalacja "rJava" (lub prawdopodobnie instalacja pakietów) spowoduje zmianę niektórych zmiennych środowiskowych.
Zarówno Java 7, jak i Java 8, w tym testowane jdk lub jre, nie działają. A dla R używam wersji 3.1.3 R i wszystkie pakiety są aktualne.
Poniżej przedstawiono niektóre informacje, które mogą być przydatne przy rozwiązywaniu problemów.
Instalując pakiet, jvm.dll needs to be added to the windows environment path: "Path"
i zrobiłem to.
My sessionInfo przedstawiono poniżej:
R version 3.1.3 (2015-03-09)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=Danish_Denmark.1252 LC_CTYPE=Danish_Denmark.1252 LC_MONETARY=Danish_Denmark.1252 LC_NUMERIC=C
[5] LC_TIME=Danish_Denmark.1252
attached base packages:
[1] grid stats graphics grDevices utils datasets methods base
other attached packages:
[1] rgdal_0.9-1 fields_8.2-1 spam_1.0-1 raster_2.3-33 sp_1.0-17 ecomsUDG.Raccess_2.2-6
[7] downscaleR_0.5-2 maps_2.3-9 downscaleR.java_0.0-2 rJava_0.9-6 gWidgetsRGtk2_0.0-83 cairoDevice_2.22
[13] RGtk2_2.20.31 gWidgets_0.0-54 R.utils_2.0.0 R.oo_1.19.0 R.methodsS3_1.7.0
loaded via a namespace (and not attached):
[1] abind_1.4-3 bitops_1.0-6 boot_1.3-15 CircStats_0.2-4 colorspace_1.2-6 dtw_1.17-1 lattice_0.20-30 MASS_7.3-39
[9] munsell_0.4.2 plyr_1.8.1 proxy_0.4-14 Rcpp_0.11.5 RCurl_1.95-4.5 scales_0.2.4 tools_3.1.3 verification_1.41
Dziękuję za wszelką pomoc można dostarczyć.
_Wskaźniki środowiskowe_ są pojęciem systemu operacyjnego i mogą być dostępne w R za pomocą 'Sys.getenv' i' Sys.setenv'. Są to zasadniczo odwzorowanie nazw zmiennych na wartości np. 'JAVA_HOME = C: \ Program Files \ Java \ jre6'. Z drugiej strony _R environments_ są jak listy, które odwzorowują nazwy na dowolny obiekt R. Zobacz: http://adv-r.had.co.nz/Environments.html. 'ls()' zwraca wektor wszystkich nazw w środowisku R, określonym przez argument "envir". Nie ma sensu nazywać 'ls (envir = NULL)', stąd twój błąd. – logworthy
@logworthy Dzięki, ale to nie ja nazwałem .... jest w paczce .... a problem nie polega na wywołaniu 'ls()', chodzi o to, że nie może znaleźć prawidłowego 'envir' ... – 163
powinieneś dodać więcej informacji na temat debugowania. Przeczytaj o debugowaniu w R, na przykład użyj opcji (błąd = odzyskaj) przed uruchomieniem kodu, aby uzyskać ślad stosu. –