sztup / scarHRD

MIT License
105 stars 52 forks source link

Collecting GC information Error in (function (x, col_types) #29

Open deb0612 opened 11 months ago

deb0612 commented 11 months ago

Dear sir, I ran sacrHRD normally untill recent months. The error message below: image

Is that the R version or any update ?

seetarajpara commented 11 months ago

I've also been getting this error, never experienced it before...

s-juross commented 10 months ago

I've been getting this error too... The error appears in the function chunk.apply(). Calls: scar_score ... preprocess.seqz -> sequenza.extract -> gc.sample.stats -> chunk.apply Do you have a solution now?

nr23730 commented 9 months ago

The problem is that the iotools package changed it's API. The sequenza package that scarHRD relies on uses it. I pushed a hotfix release here: https://github.com/buschlab/sequenza that you can install using devtools::install_github("buschlab/sequenza", build_vignettes = FALSE). Other option would be to downgrade iotools to 0.3-2.

Frank9938 commented 6 months ago

The problem is that the iotools package changed it's API. The sequenza package that scarHRD relies on uses it. I pushed a hotfix release here: https://github.com/buschlab/sequenza that you can install using devtools::install_github("buschlab/sequenza", build_vignettes = FALSE). Other option would be to downgrade iotools to 0.3-2.

That was very helpful, thank you!

moshl commented 4 weeks ago

The problem is that the iotools package changed it's API. The sequenza package that scarHRD relies on uses it. I pushed a hotfix release here: https://github.com/buschlab/sequenza that you can install using devtools::install_github("buschlab/sequenza", build_vignettes = FALSE). Other option would be to downgrade iotools to 0.3-2.

Hi, I have also meet the same question. I re-installed the sequenza and iotools according to your suggestions, but the problem is still unresolved. The error massages as below: image

Is it because the R version is incorrect?Is R3.5 necessary? image

nr23730 commented 4 weeks ago

You need use either downgrade iotools or use the fixed package, not both at the same time.

tusharika-rastogi commented 3 weeks ago

The problem is that the iotools package changed it's API. The sequenza package that scarHRD relies on uses it. I pushed a hotfix release here: https://github.com/buschlab/sequenza that you can install using devtools::install_github("buschlab/sequenza", build_vignettes = FALSE). Other option would be to downgrade iotools to 0.3-2.

Hello! @nr23730 I ran into a similar error and tried downgrading 'iotools' to '0.3-2' but the error persists. I am using the latest sequenza Docker image from "https://dockstore.org/containers/registry.hub.docker.com/sequenza/sequenza:2.2.0.9000?tab=info"

> remotes::install_version("iotools", version = "0.3-2")
> library(iotools)
> library(sequenza)

> sessionInfo()
R version 3.5.1 (2018-07-02)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Debian GNU/Linux buster/sid

Matrix products: default
BLAS: /usr/lib/x86_64-linux-gnu/blas/libblas.so.3.8.0
LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.8.0

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] remotes_2.5.0  iotools_0.3-2  sequenza_3.0.0

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.2             magrittr_1.5           XVector_0.20.0        
 [4] zlibbioc_1.26.0        GenomicRanges_1.32.7   BiocGenerics_0.26.0   
 [7] hms_0.5.0              IRanges_2.14.12        R6_2.4.0              
[10] rlang_0.4.0            pbapply_1.4-1          GenomeInfoDb_1.16.0   
[13] tools_3.5.1            pkgbuild_1.0.4         parallel_3.5.1        
[16] squash_1.0.8           cli_1.1.0              copynumber_1.20.0     
[19] assertthat_0.2.1       tibble_2.1.3           crayon_1.3.4          
[22] processx_3.4.1         GenomeInfoDbData_1.1.0 callr_3.3.1           
[25] readr_1.3.1            ps_1.3.0               bitops_1.0-6          
[28] vctrs_0.2.0            S4Vectors_0.18.3       RCurl_1.96-0          
[31] zeallot_0.1.0          compiler_3.5.1         pillar_1.4.2          
[34] seqminer_7.1           prettyunits_1.0.2      backports_1.1.4       
[37] stats4_3.5.1           pkgconfig_2.0.2       

> test<-sequenza.extract("/home/sequenza/JTI019_output.seqz.gz", verbose=TRUE)
Collecting GC information Error in (function (x, col_types)  : unused argument (parallel = 1)

I even tried the hotfix release here: https://github.com/buschlab/sequenza (without downgrading the iotools package) but the error remains unresolved.

> test<-sequenza.extract("/home/sequenza/data/sample.output.seqz.gz", verbose=TRUE)
Collecting GC information Error in (function (x, col_types)  : unused argument (CH.PARALLEL = 1)
nr23730 commented 3 weeks ago

I did not test your specific use case. But the docker image you're using is 6 years old and ships a very ancient version of both sequenza and R. There is a sequenza 3.0 image available (which I also did not test). But I would rather suggest to build a fresh container using the latest version of R and the referenced hotfix.

tusharika-rastogi commented 3 weeks ago

Thank you for the response. I tried directly using the referenced hotfix in Rstudio but it still doesn't seem to work.

devtools::install_github("buschlab/sequenza", build_vignettes = FALSE, force = TRUE)
library(sequenza)
test<-sequenza.extract("/sequenza_analysis/sample.seqz.gz", verbose = TRUE)

ERROR:

Collecting GC information . done

Processing chr1:
Error in data.frame(base.count = as.integer(n.base.mut), maj.base.freq = as.numeric(max.freqs[,  : 
  arguments imply differing number of rows: 35, 31
In addition: There were 50 or more warnings (use warnings() to see the first 50)