-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Current version of R: 4.2.1. However, this is not an issue related to the version of R.
I haven't tested all the versions, but the last known version that was working to me was "HyperSpec 0.99-20171005"
This issue is specific to w data point and has been existing for a while. Still present in github's version of "hySpc.read.spc", and was present before the latest version of R in cran of the "hyperSpec" package ("read.spc").
While the crash info does not reveal much, I have found the problematic lines: 784 and 816
https://github.com/r-hyperspec/hySpc.read.spc/blob/develop/R/read_spc.R
The line contains the following:
data[s, "w"] <- hdr$subhdr$w
However, when looking into the hdr$subhdr object there is nothing called w, hence the error. I may be wrong, but I suspect that names must have been changed and should now be refering to subwlevel:
data[s, "w"] <- hdr$subhdr$subwlevel
This is what my hdr$subhdr object contains:
> str(hdr$subhdr)
List of 9
$ subflgs : raw 00
$ subexp : int -128
$ subindx : int 4
$ subtime : num -46
$ subnext : num -41
$ subnois : num 0
$ subnpts : int 737
$ subscan : int 0
$ subwlevel: num -4109
Note that this crashed at the first round of the for loop, and I have pretty much this problem on all files.
For testing, I can only refer to those available on zenodo for testing. Just to be sure, I have tested the file called "200528-7 A1.spc".
https://doi.org/10.5281/zenodo.5607596
I am afraid you might have to download the 30gb archive to extract that 400 mb example. If inconvenient, I guess we could find some way to transfer only that file of interest.
Messages returned in the terminal:
Loading file 1/1: 200528-7 A1.spc
Warning: Error in <-: replacement has length zero
1: runApp
SEND {"busy":"idle"}
Session stopped
Messages returned while manually testing. The message is the same if running the whole function:
> data[s, "w"] <- hdr$subhdr$w
Error in x[[jj]][iseq] <- vjj : replacement has length zero
Of course, running with the proposed fix does not crash. I am still testing if this is fine data wise. Also, I do not remember if I even need these data.