This is a first rough import function for JCAMP-DX spectra.

So far, AFFN and PAC formats are supported for simple XYDATA, DATA TABLEs and PEAK TABLEs.

NTUPLES / PAGES are not (yet) supported.

DIF, DUF, DIFDUP and SQZ data formats are not (yet) supported.

read.jdx(
  filename = stop("filename is needed"),
  encoding = "",
  header = list(),
  keys.hdr2data = FALSE,
  ...,
  NA.symbols = c("NA", "N/A", "N.A."),
  collapse.multi = TRUE,
  wl.tolerance = hy.getOption("wl.tolerance"),
  collapse.equal = TRUE
)

Arguments

filename

file name and path of the .jdx file

encoding

encoding of the JCAMP-DX file (used by base::readLines())

header

list with manually set header values

keys.hdr2data

index vector indicating which header entries should be tranfered into the extra data. Usually a character vector of labels (lowercase, without and dashes, blanks, underscores). If TRUE, all header entries are read.

...

further parameters handed to the data import function, e.g.

parametermeaningdefault
xtoltolerance for checking calculated x values against checkpoints at beginning of lineXFACTOR
ytoltolerance for checking Y values against MINY and MAXYYFACTOR
NA.symbols

character vector of text values that should be converted to NA

collapse.multi

should hyperSpec objects from multispectra files be collapsed into one hyperSpec object (if FALSE, a list of hyperSpec objects is returned).

wl.tolerance, collapse.equal

see collapse

Value

hyperSpec object

Note

JCAMP-DX support is incomplete and the functions may change without notice. See vignette ("fileio") and the details section.

Author

C. Beleites with contributions by Bryan Hanson