gpt4 book ai didi

r - 如何将 R Rcpp 更新到版本 > 1.7

转载 作者:行者123 更新时间:2023-12-03 08:10:30 29 4
gpt4 key购买 nike

我正在尝试将 Rcpp 从 1.0.6 更新到 1.0.7 或 1.0.8。 Rcpp 更新对于我打算使用的主要 R 库至关重要。

我查看了文档并尝试使用以下方法安装 Rcpp:

install.packages("Rcpp", repos="https://RcppCore.github.io/drat")

安装已完成,但更新未发生。我在下面附加了命令和 sessionInfo() 信息:

library(Seurat)
Error: package or namespace load failed for ‘Seurat’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
namespace ‘Rcpp’ 1.0.6 is already loaded, but >= 1.0.7 is required

> sessionInfo()
R version 4.0.2 (2020-06-22)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux Server release 6.7 (Santiago)

Matrix products: default
BLAS: /usr/lib64/libblas.so.3.2.1
LAPACK: /usr/lib64/liblapack.so.3.2.1

Random number generation:
RNG: Mersenne-Twister
Normal: Inversion
Sample: Rounding

locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats graphics grDevices utils datasets methods base

other attached packages:
[1] Rcpp_1.0.6

loaded via a namespace (and not attached):
[1] MASS_7.3-54 compiler_4.0.2 Matrix_1.2-18 tools_4.0.2
[5] RColorBrewer_1.1-2 RANN_2.6.1 KernSmooth_2.23-17 grid_4.0.2
[9] lattice_0.20-44 ROCR_1.0-11

最佳答案

所以您正在使用Seurat。这是一个包含许多递归依赖项的大包:

> db <- tools::CRAN_package_db()
> tools::package_dependencies("Seurat", recursive=TRUE, db=db)
$Seurat
[1] "methods" "cluster" "cowplot"
[4] "fitdistrplus" "future" "future.apply"
[7] "ggplot2" "ggrepel" "ggridges"
[10] "graphics" "grDevices" "grid"
[13] "httr" "ica" "igraph"
[16] "irlba" "jsonlite" "KernSmooth"
[19] "leiden" "lmtest" "MASS"
[22] "Matrix" "matrixStats" "miniUI"
[25] "patchwork" "pbapply" "plotly"
[28] "png" "RANN" "RColorBrewer"
[31] "Rcpp" "RcppAnnoy" "reticulate"
[34] "rlang" "ROCR" "Rtsne"
[37] "scales" "scattermore" "sctransform"
[40] "SeuratObject" "shiny" "spatstat.core"
[43] "spatstat.geom" "stats" "tibble"
[46] "tools" "utils" "uwot"
[49] "RcppEigen" "RcppProgress" "gtable"
[52] "survival" "digest" "globals"
[55] "listenv" "parallel" "parallelly"
[58] "glue" "isoband" "mgcv"
[61] "withr" "plyr" "curl"
[64] "mime" "openssl" "R6"
[67] "magrittr" "pkgconfig" "zoo"
[70] "lattice" "htmltools" "viridisLite"
[73] "base64enc" "htmlwidgets" "tidyr"
[76] "dplyr" "vctrs" "lazyeval"
[79] "crosstalk" "purrr" "data.table"
[82] "promises" "RcppTOML" "here"
[85] "rappdirs" "gplots" "farver"
[88] "labeling" "lifecycle" "munsell"
[91] "reshape2" "gridExtra" "RcppArmadillo"
[94] "httpuv" "xtable" "fontawesome"
[97] "sourcetools" "later" "crayon"
[100] "fastmap" "commonmark" "bslib"
[103] "cachem" "ellipsis" "spatstat.data"
[106] "nlme" "rpart" "spatstat.utils"
[109] "spatstat.sparse" "abind" "tensor"
[112] "goftest" "deldir" "polyclip"
[115] "fansi" "pillar" "FNN"
[118] "RSpectra" "dqrng" "sass"
[121] "jquerylib" "generics" "tidyselect"
[124] "BH" "sitmo" "codetools"
[127] "gtools" "caTools" "rprojroot"
[130] "yaml" "splines" "colorspace"
[133] "askpass" "cli" "utf8"
[136] "stringr" "cpp11" "sys"
[139] "bitops" "fs" "stringi"

>

并非所有这些都会被编译为包,但有些是。有些可能对 Rcpp 有(递归)依赖。我怀疑其中一个或多个是针对 Rcpp 版本 1.0.6 构建的,因此我尝试运行 update.packages() 来向前推进您的软件包堆栈。然后再试一次。

无论如何,我的 Ubuntu 系统上没有任何问题:

> sapply(c("Rcpp", "Seurat"), packageVersion)
$Rcpp
[1] 1 0 8

$Seurat
[1] 4 1 0

>

编辑实际上,也许它要简单得多。 Seurat 告诉您需要 1.0.7 或更高版本。您自己的日志显示

other attached packages:
[1] Rcpp_1.0.6

所以我建议退出您所在的 session (因为附加了Rcpp),开始一个新的 session (确保Rcpp未加载),更新Rcpp然后尝试安装Seurat

另请注意,我们在 1.0.6 和 1.0.7 之间进行了更改,这使得混合变得困难。因此,一旦更新了 Rcpp,您就应该重建使用它的包。

关于r - 如何将 R Rcpp 更新到版本 > 1.7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70991393/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com