Changelog
Source:NEWS.md
chromConverter 0.7.1
- Fix automatic file detection for directories (e.g., Waters
.raw
and Agilent.D
)
chromConverter 0.7.0
Major features
- Added preliminary support for ‘Varian Worktation’ (
.sms
) format throughread_varian_sms
function. - Added preliminary support for ‘Shimadzu QGD’ GCMS files through the
read_shimadzu_qgd
function. - Added preliminary support for ‘Allotrope Simple Model’ (ASM) 2D chromatography date files.
- Added support for reading multiple files from ‘Agilent’
.D
directories throughread_agilent_d
function. - Added internal parser for ‘Agilent ChemStation’ MS files through
read_agilent_ms
. - Added option to write mzML files (MS1 and DAD).
- Added option to write ANDI MS netCDF files.
UI changes
- Changed order of arguments in
read_chroms
so thatformat_in
comes second afterpath
. - Removed extraneous
export
argument fromread_chroms
. To export files, you now only need to provide an argument toexport_format
. - Updated handling of multiple chromatograms by
read_shimadzu_lcd
. The function now returns a list of named chromatograms ifdata_format == "wide"
and returns multiple chromatograms in a singledata.frame
ifdata_format == "long"
. - Added
scale
argument toread_chemstation_uv
andread_shimadzu_ascii
to toggle scaling of chromatograms. - Harmonized file path arguments across parser functions by changing
file
arguments topath
. - Harmonized column names in output across parsers.
- Small changes in
read_cdf
UI:what
now defaults toNULL
and defaults are coded into downstreamread_andi_chrom
andread_andi_ms
functions. - Added extra verbosity in
read_chroms
whenverbose
isTRUE
.
Other improvements
- Fixed bug causing reticulate to attempt reinstallation of Aston every time the package is loaded (due to case sensitivity of packages names in
reticulate::configure_environment
). - Added
data.table
as an option forformat_out
. - Improved speed of
read_shimadzu_lcd
by dealing with twos-complements more sensibly. - Start ‘Shimadzu LCD’ chromatogram retention times at dwell time (DLT).
- Give temp files generated from Shimadzu OLE files informative names.
- Use ‘Output Date’ field instead of ‘Type’ to find ‘Shimadzu’ ASCII delimiter. (This seems to be a more generalizable solution since some files do not contain the ‘Type’ field).
- Allow relative paths for
path_out
when using ‘ThermoRawFileParser’ and ‘OpenChrom’ parsers. - Allow creation of new directories by
read_chroms
ifpath_out
does not exist. - Fixed bug affecting some
mdf
files lacking null bytes after the file header. - Eliminated ‘magrittr’ dependency by using xpath to parse XML in a more straightforward fashion.
- Fixed bug causing truncation of sample names at the first period by
read_chroms
. - Modified
export_csv
function to label first column for wide-format chromatograms. - Improved handling of metadata from rainbow parsers.
- Fixed error when providing single chromatogram to .
- Added metadata field for source checksum (SHA1) and source file format.
- Other minor changes to metadata fields.
- Return all times in Coordinated Univeral Time (UTC) for consistency across systems.
chromConverter 0.6.4
- Added support for ‘Agilent ChemStation’ version 8 (
.ch
) files throughread_chemstation_ch
. - Fixed failure to return units in some
Agilent Chemstation
files due to typo. - Fixed bug causing “spill-over” of Agilent metadata fields.
- Fixed bug causing failure to read
ChemStation
CSV files on (some) mac machines by specifying little-endian format in call toread.csv
.
chromConverter 0.6.3
- Added parser for total ion chromatogram (TIC) stream in ‘Shimadzu’ LCD files.
- Added additional support for extraction of metadata from ‘Shimadzu’ LCD and GCD files.
- Updated docs for
read_shimadzu_lcd_2d
to more accurately reflect file structure. - Added
scale
argument toread_chemstation_ch
andread_shimadzu_lcd
to toggle scaling of chromatograms resolving (#30).
chromConverter 0.6.2
- Updated
read_shimadzu_lcd
function to correctly determine the number of blocks in the “Shimadzu” LCD PDA stream (thanks to kco-hereon). - Added preliminary support for 2D data streams from “Shimadzu LCD” files.
- Added parser for ‘Shimadzu GCD’ files (from GC-FID).
chromConverter 0.6.1
- Added support for ‘Shimadzu’ ASCII files with ‘[LC Chromatogram…]’ sub-header.
- Correct ‘Shimadzu’ ASCII chromatograms by ‘Intensity Multiplier’ if it is provided.
- Fixed bug in logic in
export_cdfs
function to permit conversion of files lacking metadata. - Minor, cosmetic changes to documentation.
chromConverter 0.6.0
- Added parser for reading ANDI MS (
.cdf
) files. - Fixed parsing of Agilent MS files with ‘entab’ reader.
- Fixed
read_chemstation_ch
parser to correctly read “Mustang Chemstation” 179 files with 8-byte encoding. - Re-factored
read_shimadzu
function and added support for new types of chromatograms (e.g. status, uv and total ion chromatograms). Added support for reading multiple types of chromatograms at once. - Added support for reading MS spectra from ‘Shimadzu’ ascii files using
read_shimadzu
. - Exported
write_cdf
and added additional arguments (lambda
andforce
) for greater control by users. - Added internal parser for 1D ‘Waters RAW’ chromatograms (
read_waters_raw
). - Added
collapse
argument tocall_rainbow
and to collapse superfluous lists. - Added
...
argument toread_chroms
for supplying additional arguments to parsers. - Added alias to
read_chroms
for readingmzxml
files withRaMS
. - Added
precision
argument tocall_rainbow
to control number of digits “mz” values are rounded to. (Also changed default behavior so values are rounded to one decimal by default). - Fixed bug in
read_shimadzu_lcd
on Windows due to issue with passing escaped paths to Python. - Updated documentation of various functions.
chromConverter 0.5.0
New features
- Added support for parallel processing through
pbapply
package. (Note: Thepbapply
package must be manually installed to enable parallel processing). - Added internal parser for ‘Agilent ChemStation’ version 31 files (through
read_chemstation_uv
function). - Added support for ‘Agilent OpenLab’ version 131 files through internal parser.
- Added preliminary support for reading ‘Agilent’ (
.dx
) files (throughread_agilentdx
function). - Added support for reading ‘ChemStation’ REPORT files.
- Added parser for Shimadzu
.lcd
files through theread_shimadzu_lcd
function. Only the PDA stream (not MS) is currently supported. - Added
read_peaklist
function for reading peak lists. Currently ‘Agilent ChemStation’ and ‘Shimadzu ASCII’ formats are supported. - Added
verbose
argument to control console output for external parsers (‘OpenChrom’ and ‘ThermoRawFileParser’).
Other Improvements
- Improved automatic filetype detection by
read_chroms
. - Refactored
read_thermoraw
function to simplify paths. - The
thermoraw
andopenchrom
parsers now use a proper temp directory if an export directory is not specified through thepath_out
argument. - Re-factored
reshape_chroms
, speeding up conversion from wide to long format. - Added additional tests, attaining 82% test coverage.
- Changed default
openchrom
export format tomzml
. - Minor changes to some metadata fields to better standardize results across different file formats and parsers.
Bug fixes
- Corrected ‘Shimadzu’ DAD parser so it reads wavelengths from the file instead of inferring them.
- Fixed bug causing failure of ‘Shimadzu’ ascii parser (when
what == "peak_table"
andread_metadata == TRUE
). - Fixed bug causing ‘MDF’ files to export as data.frames when
format_out == "matrix"
. - Fixed misleading
data_format
attributes in ‘Waters ARW’ and ‘Chromeleon’ parsers.
chromConverter 0.4.3
- Fixed bug in
chemstation_ch
parser (version 130) (#17)
chromConverter 0.4.1
chromConverter 0.4.0
New features
- Added parser for ANDI chrom
cdf
files through theread_cdf
function. - Added parser for ‘Lumex’
.mdf
files through theread_mdf
function. - Added additional options for file exports. New options for writing
chemstation_csv
(utf-16) and ANDI chromcdf
files throughread_chroms
. - Added preliminary support for automatic filetype detection by
read_chroms
when providing direct paths to files (i.e. whenfind_files == FALSE
). - Added
read_varian_peaklist
function for reading peak lists from ‘Varian MS Workstation’.
Other improvements and bug fixes:
- Added
wide
andlong
data_format
options for 2D data, such that thewide
format option writes retention times as rownames of the matrix or data.frame. while thelong
format writes retention times as the first column of the object. - Updated
configure_openchrom
for better discovery of ‘OpenChrom’ path and addedpath
argument for directly specifying the path to ‘OpenChrom’. - Slightly restructured metadata fields. Added
source_file
field to track data origin. - Standardized datetime stamps so they are always converted to POSIXct format.
- Now use
fs
package for parsing paths, eliminating buggycheck_paths
function. - Fixed bug causing sloppy ‘ChemStation’ FID metadata.
- Fixed bug that caused padding of ‘ChemStation 130’ files with extra zeros.
- Added additional tests.
chromConverter 0.3.3
- Added R-based parser for “ChemStation” UV (
.uv
) files (version 131) through theread_chemstation_uv
function. - Added
extract_metadata
function for extracting metadata from a list of chromatograms and returning it as adata.frame
ortibble
. - Added
progress_bar
option inread_chroms
. - Updated
reshape_chroms
andreshape_chrom
to allow switching between “wide” and “long” formats. - Added wide format option in
read_mzml
. - Added automatic detection of file formats by
read_chroms
. - Minor changes to storage of metadata in attributes for the purpose of simplification.
- Fixed bug preventing removal of file extensions for ‘Agilent’ data when using
read_chroms
. - Standardized run date/time in metadata to
POSIXct
format. - Minor updates to documentation.
chromConverter 0.3.2
- Fix ‘Shimadzu’ ascii parser so it can cope with variable entries in PDA header.
chromConverter 0.3.1
- Added support for “ChemStation” UV (
.ch
) files (version 130). - Added provisional support for “ChemStation” FID (version 8).
- Changed name of
read_chemstation_fid
function toread_chemstation_ch
. - Ignore case when matching file extensions in
read_chroms
. - Added note to README about configuring RStudio correctly for accessing python parsers.
chromConverter 0.3.0
- Fixed bug causing “Chromeleon” metadata parser to fail.
- Fixed bug in “ChemStation” metadata parser.
- Changed
format_data
argument todata_format
to select wide or long format. - Added support for parsing
mzML
files withRaMS
. - Added support for parsing “Agilent” (
.D
) and “Waters” (.raw
) files with rainbow. - Made
data_format
option available consistently for choosingwide
orlong
format. - Added parser in R for “ChemStation” FID (
.ch
) data (versions 81, 179 & 181). - Improved error handling when loading python modules.
- Improved error-handling for parsing metadata so small problems no longer error out the whole program.
chromConverter 0.2.2
- Fixed bug in
call_openchrom
so that it can actually find ‘OpenChrom’ path. - Fixed bug in
call_openchrom
to allow ‘animl’ as validexport_format
. - Allow ‘Thermo RAW’ files to be parsed using ‘Entab’.
chromConverter 0.2.1
CRAN release: 2022-07-11
- Added
configure_aston
function for configuration of Aston parsers and fixed issues with configuration of Aston.
chromConverter 0.2.0
New features and formats
- Added
read_shimadzu
function for parsing ‘Shimadzu’ ascii files. - Added
read_chromeleon
function for parsing ‘Chromeleon’ ascii files. - Added
read_thermoraw
function to convert ‘Thermo Raw’ files by calling the ‘ThermoRawFileParser’. - Added
read_mzml
function to extract UV data from mzML files using mzR. - Added
call_entab
function for calling Entab parsers. - Added
call_openchrom
to call OpenChrom parsers through the command-line interface.
(All of the new functions described above can be called from the read_chroms
function by setting the format_in
and parser
arguments).
- New option to read and attach instrumental metadata to chromatograms by setting
read_metadata = TRUE
inread_chroms
.
Simplification of read_chroms
syntax
-
read_chroms
will now automatically assign a parser if the parser isn’t specified. -
read_chroms
will throw more informative errors for mismatch betweenformat_in
andparser
arguments. -
read_chroms
will try to automatically determine if files or directories are being provided.
Other changes to read_chroms
syntax:
Dots were replaced with underscores in all arguments to read_chroms
for internal syntactical consistency across the package. Thus:
- The argument to specify the format of R objects was changed from
R.format
toformat_out
. - The argument to specify the format for exported files was changed from
format.out
toexport_format
.