GithubHelp home page GithubHelp logo

Comments (14)

Arthfael avatar Arthfael commented on September 27, 2024 2

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024 1

Hi @Arthfael

since release 3.13 rawrr is a Bioconductor package, see

https://bioconductor.org/packages/release/bioc/html/rawrr.html

I would recommend to use the latest BioC release 3.14 to install rawrr with the help of the BiocManager:

if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")

BiocManager::install("rawrr")

I am honestly not sure what you get when installing from GitHub directly using devtools::. Version 0.2.1 is stone age. Please don't use it.

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024

Hi @Arthfael

That is indeed a bit strange! Could you please upload your sessionInfo? Do you get the same error when reading from a single file (outside of the lapply function)? Are other reading functions of the package also affected (readIndex)?

Best,
Tobi

from rawrr.

Arthfael avatar Arthfael commented on September 27, 2024

from rawrr.

Arthfael avatar Arthfael commented on September 27, 2024

from rawrr.

Arthfael avatar Arthfael commented on September 27, 2024

from rawrr.

Arthfael avatar Arthfael commented on September 27, 2024

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024

Did you follow this

https://bioconductor.org/packages/release/bioc/install/rawrr/INSTALL

or specifically did you install the RawFileReader DLLs and rawrr exe on your system:

> installRawFileReaderDLLs()
Do you accept the Thermo License agreement 'X:/Rlibs/rawrr/rawrrassembly/RawFileReaderLicense.txt'? [Y/n]: Y
trying URL 'https://github.com/thermofisherlsms/ThermoRawFileParser/raw/master/packages/ThermoFisher.CommonCore.RawFileReader.4.0.26/lib//ThermoFisher.CommonCore.Data.dll'
Content type 'application/octet-stream' length 360448 bytes (352 KB)
downloaded 352 KB

trying URL 'https://github.com/thermofisherlsms/ThermoRawFileParser/raw/master/packages/ThermoFisher.CommonCore.RawFileReader.4.0.26/lib//ThermoFisher.CommonCore.MassPrecisionEstimator.dll'
Content type 'application/octet-stream' length 11264 bytes (11 KB)
downloaded 11 KB

trying URL 'https://github.com/thermofisherlsms/ThermoRawFileParser/raw/master/packages/ThermoFisher.CommonCore.RawFileReader.4.0.26/lib//ThermoFisher.CommonCore.RawFileReader.dll'
Content type 'application/octet-stream' length 620544 bytes (606 KB)
downloaded 606 KB

                  ThermoFisher.CommonCore.Data.dll ThermoFisher.CommonCore.MassPrecisionEstimator.dll 
                                                 0                                                  0 
         ThermoFisher.CommonCore.RawFileReader.dll 
                                                 0 
> installRawrrExe()
trying URL 'http://fgcz-ms.uzh.ch/~cpanse/rawrr/rawrr.1.1.12.exe'
Content type 'application/x-msdos-program' length 26624 bytes (26 KB)
downloaded 26 KB

MD5 6d5f6d19512eaba73e92d2bfb474e6f2 C:\Users\tobiasko.FGCZ-NET\AppData\Local/R/cache/R/rawrr/rawrrassembly/rawrr.exe
[1] 0
> 

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024

The problem is:

Bioc was not willing to host the binary rawrr.x.exe as part of the package. So it is downloaded on demand after the package installation through BiocManager. Same-same for the RawFileReader dlls. They are fetched from a Thermo GitHub Repo. I know this is kind of annoying, but it was the only option.

from rawrr.

Arthfael avatar Arthfael commented on September 27, 2024

from rawrr.

Arthfael avatar Arthfael commented on September 27, 2024

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024

That is all pretty wired. I meanwhile installed rawrr 1.2.0 using BiocManager on a very similar system (Windows Server 2021):

> sessionInfo()
R version 4.1.0 (2021-05-18)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows Server 2012 R2 x64 (build 9600)

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

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

other attached packages:
[1] rawrr_1.2.0         BiocManager_1.30.16

loaded via a namespace (and not attached):
 [1] magrittr_2.0.2    tidyselect_1.1.1  R6_2.5.1          rlang_1.0.1       fastmap_1.1.0     fansi_1.0.2      
 [7] dplyr_1.0.8       tools_4.1.0       DT_0.20           utf8_1.2.2        cli_3.2.0         DBI_1.1.2        
[13] htmltools_0.5.2   ellipsis_0.3.2    yaml_2.2.2        assertthat_0.2.1  digest_0.6.29     tibble_3.1.6     
[19] lifecycle_1.0.1   crayon_1.5.0      purrr_0.3.4       htmlwidgets_1.5.4 vctrs_0.3.8       glue_1.6.1       
[25] compiler_4.1.0    pillar_1.7.0      generics_0.1.2    pkgconfig_2.0.3  

What do you get when reading from the sample data that comes with the package?

> rawfile <- sampleFilePath()
> Idx <- readIndex(rawfile)
> str(Idx)
'data.frame':	573 obs. of  8 variables:
 $ scan          : int  1 2 3 4 5 6 7 8 9 10 ...
 $ scanType      : chr  "FTMS + c NSI Full ms [350.0000-1800.0000]" "FTMS + c NSI Full ms2 [email protected] [140.0000-1015.0000]" "FTMS + c NSI Full ms2 [email protected] [140.0000-1335.0000]" "FTMS + c NSI Full ms2 [email protected] [140.0000-1415.0000]" ...
 $ rtinseconds   : num  0.097 0.35 0.419 0.489 0.558 0.627 0.696 0.766 0.835 0.904 ...
 $ precursorMass : num  1075 487 645 684 547 ...
 $ MSOrder       : chr  "Ms" "Ms2" "Ms2" "Ms2" ...
 $ charge        : int  0 2 2 2 2 2 2 2 2 2 ...
 $ masterScan    : int  NA NA NA NA NA NA NA NA NA NA ...
 $ dependencyType: logi  NA NA NA NA NA NA ...

My path to the sample data is:

> rawfile
[1] "X:/Rlibs/rawrr/extdata/sample.raw"

The rawrr assembly path (the path were the dll are placed) is

> rawrrAssemblyPath()
[1] "C:\\Users\\tobiasko.FGCZ-NET\\AppData\\Local/R/cache/R/rawrr/rawrrassembly"

as you can see, also here I am getting this strange mixture of \\ and / in a single path. But that is obviously not a problem, since readIndex works.

The exe and the dlls should be at the assembly path location together with the EULA text:

> list.files(rawrrAssemblyPath())
[1] "eula.txt"                                           "rawrr.exe"                                         
[3] "ThermoFisher.CommonCore.Data.dll"                   "ThermoFisher.CommonCore.MassPrecisionEstimator.dll"
[5] "ThermoFisher.CommonCore.RawFileReader.dll"         
> 

Could you just execute the same commands and upload the returns?

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024

Puh! Yip, we need to check more carefully if the parameters are valid (length = 1) and raise an error right away. That could be avoided very easily by a stopifnot() statement at the start of readChromatogram.

from rawrr.

tobiasko avatar tobiasko commented on September 27, 2024

@cpanse

We need to check this here:

readChromatogram <- function(rawfile,
                             mass = NULL,
                             tol = 10,
                             filter = "ms",
                             type = 'xic'){
    
    .isAssemblyWorking()
    .checkRawFile(rawfile)
    
    stopifnot(type %in% c('xic', 'bpc', 'tic'))

from rawrr.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.