首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装factoextra时rbind(info,getNamespaceInfo(env,"S3methods"))出错

安装factoextra时rbind(info,getNamespaceInfo(env,"S3methods"))出错
EN

Stack Overflow用户
提问于 2019-05-01 00:39:03
回答 1查看 12.4K关注 0票数 4

我正在尝试使用Windows上的本地源码tar ball安装"factoextra“包。我可以用同样的方式安装其他包,没有问题。然而,当安装"factoextra“时,我得到了一个与S3methods相关的错误。

我已经尝试使用本地windows二进制文件,安装了最新的Rtools,并确保安装了所有依赖项。我还尝试使用该包的归档版本。

代码语言:javascript
复制
install.packages('D:\\R_Packages\\Packages\\factoextra_1.0.5.tar.gz', repos = NULL, type="source")

* installing *source* package 'factoextra' ...
** package 'factoextra' successfully unpacked and MD5 sums checked
** R
** data
*** moving datasets to lazyload DB
** byte-compile and prepare package for lazy loading
Error in rbind(info, getNamespaceInfo(env, "S3methods")) : 
  number of columns of matrices must match (see arg 2)
ERROR: lazy loading failed for package 'factoextra'
* removing 'D:/R-3.5.2/library/factoextra'
In R CMD INSTALL
Warning in install.packages :
   installation of package ‘D:/R_Packages/Packages/factoextra_1.0.5.tar.gz’ had non-zero exit status

我真的只需要安装这个包。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-02 00:55:57

我找到了这个帖子:http://r.789695.n4.nabble.com/Error-in-rbind-info-getNamespaceInfo-env-quot-S3methods-quot-td4755490.html,它引导我找到了如何在我的机器上解决类似问题的方法。

我发现我的系统上安装了一个损坏的软件包版本,必须手动删除它才能安装干净的版本。

查找factoextra是否安装以及安装位置(它可能在您的系统上,只是过时或损坏):

代码语言:javascript
复制
find.package("factoextra")

如果它已经存在(只是坏了),你可以尝试用以下命令删除它:

代码语言:javascript
复制
remove.packages("factoextra")

如果在find.packages()提示软件包已经存在的情况下remove.packages()仍然失败,那么可以使用find.packages()返回的路径来使用操作系统的文件系统来查找和删除软件包--只需小心删除您知道损坏的内容即可。

一旦旧的、损坏的包被移除,使用install.packages("factoextra"),它应该可以工作。

我有几个包都是这样坏掉的。如果您遇到这种情况,您可以使用以下命令来确定要删除和安装的软件包:

代码语言:javascript
复制
allPackages <- installed.packages()[, 1]
findBrokenPackages <- function(packages) {
    for (p in packages) {
        tryCatch(ncol(asNamespace(p)$.__NAMESPACE__.$S3methods),
                 error = function(e) print(c(p, e)))
    }
}
findBrokenPackages(allPackages)

这将打印出有相同问题的所有软件包。我建议在再次尝试使用install.packages()之前删除所有损坏的包。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55925357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档