This vignette is based on
readJDX
version 0.6.4.
The JCAMP-DX format was developed as an manufacturer-independent means of sharing spectroscopic data. The standard is described in a series of publications (McDonald and Wilks 1988; Grasselli 1991; A. Davies and Lampen 1993; Lampen et al. 1994, 1999; Baumbach et al. 2001; Cammack et al. 2006; Woollett et al. 2012). There is a recent overview of the standard (A. N. Davies et al. 2022). JCAMP-DX was developed during a time when data storage was expensive, and hence makes extensive use of compression schemes. The original application was to IR spectroscopy, but the standard has evolved over time to accommodate other spectroscopies.
JCAMP-DX files consist of two parts:
The JCAMP-DX standard allows a lot of flexibility and instrument manufacturers have written widely varying export functions. Some of the challenges in reading a JCAMP-DX file include:
readJDX
and will not be
supported in the future.splitMultiblockDX
can separate these compound files into
separate files that can be read by readJDX
:
readJDX
is geared toward raw spectral data. Therefore
variable lists formats representing derived information like PEAK
ASSIGNMENTS are not supported (but your pull requests are
welcomed!).readJDX
tries its best to deal with all these options.
If you have a file that you believe should be supported but gives an
error, please file an issue at GitHub. Be sure to attach the file that
is giving you problems.
Before release, readJDX
is tested against a large
collection of files with varying formats. A few of these files were
obtained locally. Others were collected from publically available
sources (e.g. www.jcamp-dx.org).
These files are not included with the package to save space, and in
addition, while they are publically available, for many of them the
licensing status is unclear (i.e. the OWNER entry).
The JCAMP standard requires a number of checks on the integrity of
the data decompression process. readJDX
implements most of
these either directly or indirectly. Verification is important, and we
have found JCAMP files that were not written correctly in the process of
checking integrity. For details about how data decompression is checked,
please see the original source files.
Professor Emeritus of Chemistry & Biochemistry, DePauw University, Greencastle IN USA., [email protected]↩︎