saezlab / decoupleR

R package to infer biological activities from omics data using a collection of methods.
https://saezlab.github.io/decoupleR/
GNU General Public License v3.0
176 stars 23 forks source link

Error: 'get_collectri' is not an exported object from 'namespace:decoupleR' #81

Closed hiiiyilingzhang closed 1 year ago

hiiiyilingzhang commented 1 year ago

Hi, dear develop team,

I was following the tutorial Transcription factor activity inference in bulk RNA-seq and encounter a error when collecting CollecTRI network data saying the function doesn't exist.

net <- decoupleR::get_collectri(organism='mouse', split_complexes = FALSE)
 # Error: 'get_collectri' is not an exported object from 'namespace:decoupleR'

I also tried using the function directly by loading the function from https://github.com/saezlab/decoupleR/blob/1ae54b1205fd634d967adf00e7f545bb910c46eb/R/utils-omnipath.R#L88

issue was like:

net <- get_collectri(organism='mouse', split_complexes = FALSE)
Error: 'collectri' is not an exported object from 'namespace:OmnipathR'

Here's my session info, decoupleR and OmnipathR were all attached.

> sessionInfo()
R version 4.2.2 Patched (2022-11-10 r83330)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 20.04.4 LTS

Matrix products: default
BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3

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

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

other attached packages:
[1] ggrepel_0.9.1    pheatmap_1.0.12  ggplot2_3.4.0    tidyr_1.2.0      tibble_3.1.8     dplyr_1.0.9      decoupleR_2.5.0 
[8] OmnipathR_3.5.25

Looking forward to ur reply. Thanks.

Elaine

majorkazer commented 1 year ago

I also got this error. get_collectri is a function introduced in version 2.6.0 of the package and you have version 2.5.0 installed.

You can force install the latest version by installing directly from the git: devtools::install_git("https://github.com/saezlab/decoupleR")

PauBadiaM commented 1 year ago

Hi @majorkazer and @hiiiyilingzhang ,

Sorry for the late reply. We re currently having a problem with the OmnipathR infrastructure, meaning that the obtained collectri network is currently not correct. We are working on it and as soon as it's solved we will say something. Sorry for the inconvenience.

chlazaris commented 1 year ago

I am having the same issue. Any updates on this? Any alternative solutions to reproduce what is on the tutorial? Thank you!

deeenes commented 1 year ago

Hello @majorkazer, @hiiiyilingzhang and @chlazaris,

We finished updating both OmnipathR and decoupleR. It takes quite some time until these updates get released by the official Bioconductor site. Hence we recommend updating both packages from git:

library(remotes)
remotes::install_github('saezlab/OmnipathR')
remotes::install_github('saezlab/decoupleR')

Having the latest versions is especially important if you wish to use TF activity inference.

chlazaris commented 1 year ago

Thank you for the update @deeenes. Could you please give us sessionInfo() with these new versions to make sure I am using the latest ones? Thank you!

frisalonza commented 1 year ago

Hello!

I'm still having the same issue even if I tried to update the packages as already suggested above

deeenes commented 1 year ago

Hi @chlazaris, here is my sessionInfo, you can also see that get_collectri is in the decoupleR namespace:

 r$> library(decoupleR)
 r$> library(OmnipathR)
 r$> decoupleR:::.__NAMESPACE__.$exports$get_collectri
[1] "get_collectri"
 r$> sessionInfo()
R version 4.3.0 (2023-04-21)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Arch Linux

Matrix products: default
BLAS:   /usr/lib/libopenblas.so.0.3 
LAPACK: /usr/lib/liblapack.so.3.11.0

locale:
 [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C               LC_TIME=en_GB.UTF-8       
 [4] LC_COLLATE=en_GB.UTF-8     LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_GB.UTF-8   
 [7] LC_PAPER=en_GB.UTF-8       LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C       

time zone: Europe/Berlin
tzcode source: system (glibc)

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

other attached packages:
[1] OmnipathR_3.9.5 decoupleR_2.5.1 colorout_1.2-2 

loaded via a namespace (and not attached):
 [1] rappdirs_0.3.3    utf8_1.2.3        generics_0.1.3    tidyr_1.3.0       xml2_1.3.4       
 [6] stringi_1.7.12    lattice_0.21-8    hms_1.1.3         digest_0.6.31     magrittr_2.0.3   
[11] evaluate_0.21     grid_4.3.0        fastmap_1.1.1     cellranger_1.1.0  jsonlite_1.8.4   
[16] Matrix_1.5-4.1    progress_1.2.2    backports_1.4.1   httr_1.4.6        rvest_1.0.3      
[21] purrr_1.0.1       fansi_1.0.4       cli_3.6.1         rlang_1.1.1       crayon_1.5.2     
[26] parallelly_1.36.0 yaml_2.3.7        withr_2.5.0       tools_4.3.0       parallel_4.3.0   
[31] tzdb_0.4.0        checkmate_2.2.0   dplyr_1.1.2       curl_5.0.0        vctrs_0.6.2      
[36] logger_0.2.2      R6_2.5.1          lifecycle_1.0.3   stringr_1.5.0     pkgconfig_2.0.3  
[41] pillar_1.9.0      later_1.3.1       glue_1.6.2        Rcpp_1.0.10       xfun_0.39        
[46] tibble_3.2.1      tidyselect_1.2.0  knitr_1.43        htmltools_0.5.5   igraph_1.4.3     
[51] rmarkdown_2.22    readr_2.1.4       compiler_4.3.0    prettyunits_1.1.1 readxl_1.4.2     

We see also here that it is exported since 20 April. Are you sure you have the latest version installed?

r$> packageVersion('decoupleR')
[1] ‘2.5.1’
chlazaris commented 1 year ago

Thank you @deeenes ! It works

xiasijian commented 1 year ago

get_collectri_human_mouse20230716.zip

DylanPostmus commented 11 months ago

Hi - I am having this same problem. When I install decoupleR from GitHub, the version is still 2.5.3, even though previous comments mention that 2.6 is required.

`> packageVersion("decoupleR") [1] ‘2.5.3’

packageVersion("OmnipathR") [1] ‘3.9.6’`

Installing from Github also says "building 'decoupleR_2.5.3.tar.gz'"

Any advice on how to access the get_collectri function?

PauBadiaM commented 11 months ago

Huh, that's weird it should work. You could try this:

remotes::install_github('saezlab/decoupleR', force=TRUE)

Else, did you remember to restart your R session?

DylanPostmus commented 11 months ago

That seems to have done the trick - thanks for the quick reply!

Prathyusha-konda commented 10 months ago

Huh, that's weird it should work. You could try this:

remotes::install_github('saezlab/decoupleR', force=TRUE)

Else, did you remember to restart your R session?

Hi, I previously got the Error: 'collectri' is not an exported object from 'namespace:OmnipathR'

force installing resolved that error but now I get

net <- get_collectri(organism='human', split_complexes=FALSE) Error: 'ncbi_taxid' is not an exported object from 'namespace:OmnipathR'

Could you please let me know how I can get through this? Thank you!