[英]Running lasso: package ‘glmnet’ is not available (for R version 3.4.3)
[英]Error: (converted from warning) package ‘glmnet’ is not available (for R version 3.5.3)
我已经尝试了很多方法来让它发挥作用,但我没有任何运气。 我正在使用 Debian 8,我刚刚重新下载了 R,即获得了操作系统的最高版本。 我正在下载一个将 glmnet 作为其软件包之一的 github package,我收到以下错误:
Error: (converted from warning) package ‘glmnet’ is not available (for R version 3.5.3)
我知道还有其他类似的帖子,但我都试过了,但它们仍然不起作用。 我真的需要使用例如 Debian 9 来获得更高版本以使用 glmnet 还是有更简单的解决方法?
更新
我尝试了 RyanFrost 的建议,它让我更进一步,但现在我在 glmnet package 中遇到错误。 第一次运行命令时,我收到有关 package 晶格的错误。 我运行了install.packages("lattice")
并重新运行了下面的代码。 现在我遇到了这些错误:
> install_version("glmnet", version = "3.0")
Downloading package from url: https://cloud.r-project.org/src/contrib/Archive/glmnet/glmnet_3.0.tar.gz
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
* installing *source* package ‘glmnet’ ...
** package ‘glmnet’ successfully unpacked and MD5 sums checked
** libs
gfortran -fpic -g -O2 -fstack-protector-strong -c glmnet5dpclean.f -o glmnet5dpclean.o
gcc -std=gnu99 -I"/usr/share/R/include" -DNDEBUG -fpic -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c glmnet_init.c -o glmnet_init.o
gcc -std=gnu99 -I"/usr/share/R/include" -DNDEBUG -fpic -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -g -c pb.c -o pb.o
pb.c: In function ‘setpb_’:
pb.c:21:3: warning: implicit declaration of function ‘R_GetCurrentEnv’ [-Wimplicit-function-declaration]
eval(s, R_GetCurrentEnv());
^
pb.c:21:11: warning: passing argument 2 of ‘Rf_eval’ makes pointer from integer without a cast
eval(s, R_GetCurrentEnv());
^
In file included from pb.c:1:0:
/usr/share/R/include/Rinternals.h:955:6: note: expected ‘SEXP’ but argument is of type ‘int’
SEXP Rf_eval(SEXP, SEXP);
^
gcc -std=gnu99 -shared -L/usr/lib/R/lib -Wl,-z,relro -o glmnet.so glmnet5dpclean.o glmnet_init.o pb.o -lgfortran -lm -lquadmath -L/usr/lib/R/lib -lR
installing to /usr/local/lib/R/site-library/glmnet/libs
** R
** data
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
Error: package or namespace load failed for ‘glmnet’ in dyn.load(file, DLLpath = DLLpath, ...):
unable to load shared object '/usr/local/lib/R/site-library/glmnet/libs/glmnet.so':
/usr/local/lib/R/site-library/glmnet/libs/glmnet.so: undefined symbol: R_GetCurrentEnv
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/usr/local/lib/R/site-library/glmnet’
Error: Failed to install 'unknown package' from URL:
(converted from warning) installation of package ‘/tmp/RtmpAoQtn8/remotes75e4327440a/glmnet’ had non-zero exit status
glmnet package 在 glmnet 3.0 版(3.0-1 以上)之后开始需要 R 3.6 版。
因此,要尝试的一件事是安装 3.0 版(仅需要 R 3.5+)。
您可以为此使用 devtools:
library(devtools)
install_version("glmnet", version = "3.0")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.