Introduction
Isoreader supports several continuous flow IRMS data formats. This
vignette shows some of the functionality for continuous flow files. For
additional information on operations more generally (caching, combining
read files, data export, etc.), please consult the operations
vignette. For details on downstream data processing and
visualization, see the isoprocessor package.
Reading files
Reading continuous flow files is as simple as passing one or multiple
file or folder paths to the iso_read_continuous_flow()
function. If folders are provided, any files that have a recognized
continuous flow file extensions within those folders will be processed
(e.g. all .dxf
, .cf
and .iarc
).
Here we read several files that are bundled with the package as examples
(and whose paths can be retrieved using the
iso_get_reader_example()
function). Note that some of the
files (.cf, .dxf) are individual analysis files whereas others (.iarc)
are collections of several files.
continuous_flow_example.cf |
continuous flow |
Isodat |
Continuous Flow file format (older) |
continuous_flow_example.dxf |
continuous flow |
Isodat |
Continuous Flow file format (newer) |
continuous_flow_example.iarc |
continuous flow |
ionOS |
Continuous Flow data archive |
dual_inlet_example.caf |
dual inlet |
Isodat |
Dual Inlet file format (older) |
dual_inlet_example.did |
dual inlet |
Isodat |
Dual Inlet file format (newer) |
dual_inlet_nu_example.txt |
dual inlet |
Nu |
Dual Inlet file format |
background_scan_example.scn |
scan |
Isodat |
Scan file format |
full_scan_example.scn |
scan |
Isodat |
Scan file format |
peak_shape_scan_example.scn |
scan |
Isodat |
Scan file format |
time_scan_example.scn |
scan |
Isodat |
Scan file format |
# read a few of the continuous flow examples
cf_files <-
iso_read_continuous_flow(
iso_get_reader_example("continuous_flow_example.cf"),
iso_get_reader_example("continuous_flow_example.iarc"),
iso_get_reader_example("continuous_flow_example.dxf")
)
#> Info: preparing to read 3 data files (all will be cached)...
#> Info: reading file 'continuous_flow_example.cf' with '.cf' reader...
#> Info: reading file 'continuous_flow_example.iarc' with '.iarc' reader...
#> unpacking isoprime archive file...
#> found 1 processing list(s) in .iarc: 'ProcessingList_1'
#> found 2 method(s) in .iarc: 'Method_320', 'Method_77'
#> found 4 sample(s) in .iarc
#> searching processing list 'ProcessingList_1' for gas configurations...
#> found configurations for 'CO', 'SO2', 'CO2', 'H2', 'N2'
#> processing sample '6632_WSL-2 wood' (IRMS data '133.hdf5', '135.hdf5')
#> processing sample '6605_USGS41' (IRMS data '40.hdf5', '43.hdf5')
#> processing sample '6617_IAEA600' (IRMS data '80.hdf5', '82.hdf5')
#> processing sample '6630_GlutamicAcid04' (IRMS data '124.hdf5', '126.h...
#> Info: reading file 'continuous_flow_example.dxf' with '.dxf' reader...
#> Info: finished reading 3 files in 5.79 secs
File summary
The cf_files
variable now contains a set of isoreader
objects, one for each file. Take a look at what information was
retrieved from the files using the iso_get_data_summary()
function.
continuous_flow_example.cf |
continuous_flow_example.cf |
NA |
8605 time points, 2 ions (2,3) |
21 entries |
standards, resistors |
6632_WSL-2 wood |
continuous_flow_example.iarc |
Task_0b7e6b49-7756-4cca-b387-4d6617cb28e6 |
1952 time points, 3 ions (45,46,44) |
17 entries |
no method info |
6605_USGS41 |
continuous_flow_example.iarc |
Task_0e08e8b4-c625-4fd7-bf5b-9f4823f660cd |
2387 time points, 2 ions (29,28) |
17 entries |
no method info |
6617_IAEA600 |
continuous_flow_example.iarc |
Task_1de1fdc3-0797-4e44-8357-52acbd0d4a6d |
1796 time points, 3 ions (45,46,44) |
17 entries |
no method info |
6630_GlutamicAcid04 |
continuous_flow_example.iarc |
Task_261a3286-0bc6-4aca-bba2-183c02597d8b |
2386 time points, 2 ions (29,28) |
17 entries |
no method info |
continuous_flow_example.dxf |
continuous_flow_example.dxf |
NA |
2435 time points, 6 ions (28,29,30,44,45,46) |
21 entries |
standards, resistors |
Problems
In case there was any trouble with reading any of the files, the
following functions provide an overview summary as well as details of
all errors and warnings, respectively. The examples here contain no
errors but if you run into any unexpected file read problems, please
file a bug report in the isoreader issue
tracker.
Detailed file information can be aggregated for all isofiles using
the iso_get_file_info()
function which supports the full select
syntax of the dplyr
package to specify which columns are of interest (by default, all file
information is retrieved). Additionally, file information from different
file formats can be renamed to the same column name for easy of
downstream processing. The following provides a few examples for how
this can be used (the names of the interesting info columns may vary
between different file formats):
# all file information
cf_files |> iso_get_file_info(select = c(-file_root)) |> knitr::kable()
#> Info: aggregating file info from 6 data file(s), selecting info columns 'c(-file_root)'
continuous_flow_example.cf |
continuous_flow_example.cf |
NA |
2013-07-13 23:42:40 |
550462 |
19 |
NA |
Sebastian8.gcm |
98 |
>Internal No 3 |
F8-5.5uL |
NA |
6520 |
NA |
NA |
NA |
NA |
Sebastian\20130624_F8_CH4.met |
2.79431047797221 |
0.2 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
6632_WSL-2 wood |
continuous_flow_example.iarc |
Task_0b7e6b49-7756-4cca-b387-4d6617cb28e6 |
2014-10-08 18:27:23 |
662269 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0b7e6b49-7756-4cca-b387-4d6617cb28e6 |
WSL-2 wood |
6632 |
2014-10-08T18:27:23.4682755 |
2014-10-08T18:43:40.1319321 |
Success |
320 |
{BC89E456-57C0-4FF1-9110-90C8E6AE1B69} |
Wood - 25 mg |
10mg120sIRMS |
29 |
NA |
NA |
NA |
NA |
NA |
6605_USGS41 |
continuous_flow_example.iarc |
Task_0e08e8b4-c625-4fd7-bf5b-9f4823f660cd |
2014-10-08 14:14:35 |
662269 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
0e08e8b4-c625-4fd7-bf5b-9f4823f660cd |
USGS41 |
6605 |
2014-10-08T14:14:35.9865192 |
2014-10-08T14:24:49.0288173 |
Success |
77 |
{BC89E456-57C0-4FF1-9110-90C8E6AE1B69} |
Glutamic Acid - 1mg |
05mg70sIRMS_fast |
1 |
NA |
NA |
NA |
NA |
NA |
6617_IAEA600 |
continuous_flow_example.iarc |
Task_1de1fdc3-0797-4e44-8357-52acbd0d4a6d |
2014-10-08 16:01:14 |
662269 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1de1fdc3-0797-4e44-8357-52acbd0d4a6d |
IAEA600 |
6617 |
2014-10-08T16:01:14.8274991 |
2014-10-08T16:11:29.4289531 |
Success |
77 |
{BC89E456-57C0-4FF1-9110-90C8E6AE1B69} |
Caffeine - 0.4mg |
05mg70sIRMS_fast |
0.4 |
NA |
NA |
NA |
NA |
NA |
6630_GlutamicAcid04 |
continuous_flow_example.iarc |
Task_261a3286-0bc6-4aca-bba2-183c02597d8b |
2014-10-08 18:00:50 |
662269 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
261a3286-0bc6-4aca-bba2-183c02597d8b |
GlutamicAcid04 |
6630 |
2014-10-08T18:00:50.7420188 |
2014-10-08T18:11:05.9675352 |
Success |
77 |
{BC89E456-57C0-4FF1-9110-90C8E6AE1B69} |
Glutamic Acid - 1mg |
05mg70sIRMS_fast |
1 |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.dxf |
continuous_flow_example.dxf |
NA |
2017-02-09 19:55:40 |
370497 |
NA |
1 |
NA |
NA |
NA |
acetanilide_1 |
0.428 |
2921 |
11 |
A5 |
NA |
NA |
N2 CO2 85%.met |
0 |
0.2 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
N2 CO2 test.eam |
NA |
5 |
0 |
0 |
Sample |
Set Sample Dilution to 0 [%] , Sample dilution: 000 0 ,
Set Reference Dilution to 69 [%] , Peak Center found at [59732] , Sample
Dilution found at 0 [] , Set Sample Dilution to 0 [%] , Sample dilution:
000 0 , Detector Signal added: Ret:145.171[sec] Ampl:2321 [mV] :
12:47:38 N2, Set Reference Dilution to 57 [%] , Set Sample Dilution to
89 [%] , Sample dilution: 001 1 |
# select file information
cf_files |>
iso_get_file_info(
select = c(
# rename sample id columns from the different file types to a new ID column
ID = `Identifier 1`, ID = `Name`,
# select columns without renaming
Analysis, `Peak Center`, `H3 Factor`,
# select the time stamp and rename it to `Date & Time`
`Date & Time` = file_datetime
),
# explicitly allow for file specific rename (for the new ID column)
file_specific = TRUE
) |> knitr::kable()
#> Info: aggregating file info from 6 data file(s), selecting info columns 'c(ID = `Identifier 1`, ID = Name, Analysis, `Peak Center`, `H3 Factor`, `Date & Time` = file_datetime)'
continuous_flow_example.cf |
F8-5.5uL |
6520 |
NA |
2.79431047797221 |
2013-07-13 23:42:40 |
6632_WSL-2 wood |
WSL-2 wood |
NA |
NA |
NA |
2014-10-08 18:27:23 |
6605_USGS41 |
USGS41 |
NA |
NA |
NA |
2014-10-08 14:14:35 |
6617_IAEA600 |
IAEA600 |
NA |
NA |
NA |
2014-10-08 16:01:14 |
6630_GlutamicAcid04 |
GlutamicAcid04 |
NA |
NA |
NA |
2014-10-08 18:00:50 |
continuous_flow_example.dxf |
acetanilide_1 |
2921 |
1 |
0 |
2017-02-09 19:55:40 |
Select/Rename
Rather than retrieving specific file info columns using the above
example of iso_get_file_info(select = ...)
, these
information can also be modified across an entire collection of isofiles
using the iso_select_file_info()
and
iso_rename_file_info()
functions. For example, the above
example could be similarly achieved with the following use of
iso_select_file_info()
:
# select + rename specific file info columns
cf_files2 <- cf_files |>
iso_select_file_info(
ID = `Identifier 1`, ID = `Name`, Analysis, `Peak Center`, `H3 Factor`,
`Date & Time` = file_datetime,
# recode to the same name in different files
`Sample Weight` = `Identifier 2`, `Sample Weight` = `EA Sample Weight`,
file_specific = TRUE
)
#> Info: selecting/renaming the following file info:
#> - for 4 file(s): 'file_id', 'Name'->'ID', 'file_datetime'->'Date & Time', 'EA Sample Weight'->'Sample Weight'
#> - for 2 file(s): 'file_id', 'Identifier 1'->'ID', 'Analysis', 'Peak Center', 'H3 Factor', 'file_datetime'->'Date & Time', 'Identifier 2'->'Sample Weight'
# fetch all file info
cf_files2 |> iso_get_file_info() |> knitr::kable()
#> Info: aggregating file info from 6 data file(s)
continuous_flow_example.cf |
F8-5.5uL |
6520 |
NA |
2.79431047797221 |
2013-07-13 23:42:40 |
NA |
6632_WSL-2 wood |
WSL-2 wood |
NA |
NA |
NA |
2014-10-08 18:27:23 |
29 |
6605_USGS41 |
USGS41 |
NA |
NA |
NA |
2014-10-08 14:14:35 |
1 |
6617_IAEA600 |
IAEA600 |
NA |
NA |
NA |
2014-10-08 16:01:14 |
0.4 |
6630_GlutamicAcid04 |
GlutamicAcid04 |
NA |
NA |
NA |
2014-10-08 18:00:50 |
1 |
continuous_flow_example.dxf |
acetanilide_1 |
2921 |
1 |
0 |
2017-02-09 19:55:40 |
0.428 |
Filter
Any collection of isofiles can also be filtered based on the
available file information using the function
iso_filter_files
. This function can operate on any column
available in the file information and supports full dplyr
syntax.
# find files that have 'acetanilide' in the new ID field
cf_files2 |> iso_filter_files(grepl("acetanilide", ID)) |>
iso_get_file_info() |>
knitr::kable()
#> Info: applying file filter, keeping 1 of 6 files
#> Info: aggregating file info from 1 data file(s)
continuous_flow_example.dxf |
acetanilide_1 |
2921 |
1 |
0 |
2017-02-09 19:55:40 |
0.428 |
# find files that were run since 2015
cf_files2 |>
iso_filter_files(`Date & Time` > "2015-01-01") |>
iso_get_file_info() |>
knitr::kable()
#> Info: applying file filter, keeping 1 of 6 files
#> Info: aggregating file info from 1 data file(s)
continuous_flow_example.dxf |
acetanilide_1 |
2921 |
1 |
0 |
2017-02-09 19:55:40 |
0.428 |
Mutate
The file information in any collection of isofiles can also be
mutated using the function iso_mutate_file_info
. This
function can introduce new columns and operate on any existing columns
available in the file information (even if it does not exist in all
files) and supports full dplyr
syntax. It can also be used in conjunction with
iso_with_unit
to generate values with implicit units.
cf_files3 <-
cf_files2 |>
iso_mutate_file_info(
# update existing column
ID = paste("ID:", ID),
# introduce new column
`Run since 2015?` = `Date & Time` > "2015-01-01",
# parse weight as a number and turn into a column with units
`Sample Weight` = `Sample Weight` |> parse_number() |> iso_with_units("mg")
)
#> Info: mutating file info for 6 data file(s)
cf_files3 |>
iso_get_file_info() |>
iso_make_units_explicit() |>
knitr::kable()
#> Info: aggregating file info from 6 data file(s)
continuous_flow_example.cf |
ID: F8-5.5uL |
6520 |
NA |
2.79431047797221 |
2013-07-13 23:42:40 |
NA |
FALSE |
6632_WSL-2 wood |
ID: WSL-2 wood |
NA |
NA |
NA |
2014-10-08 18:27:23 |
29.000 |
FALSE |
6605_USGS41 |
ID: USGS41 |
NA |
NA |
NA |
2014-10-08 14:14:35 |
1.000 |
FALSE |
6617_IAEA600 |
ID: IAEA600 |
NA |
NA |
NA |
2014-10-08 16:01:14 |
0.400 |
FALSE |
6630_GlutamicAcid04 |
ID: GlutamicAcid04 |
NA |
NA |
NA |
2014-10-08 18:00:50 |
1.000 |
FALSE |
continuous_flow_example.dxf |
ID: acetanilide_1 |
2921 |
1 |
0 |
2017-02-09 19:55:40 |
0.428 |
TRUE |
Add
Additionally, a wide range of new file information can be added in
the form of a data frame with any number of columns (usually read from a
comma-separated-value/csv file or an Excel/xlsx file) using the function
iso_add_file_info
and specifying which existing file
information should be used to merge in the new information. It is
similar to dplyr’s
left_join but with additional safety checks and the possibility to
join the new information sequentially as illustrated below.
# this kind of information data frame is frequently read in from a csv or xlsx file
new_info <-
dplyr::bind_rows(
# new information based on new vs. old samples
dplyr::tribble(
~file_id, ~`Run since 2015?`, ~process, ~info,
NA, TRUE, "yes", "new runs",
NA, FALSE, "yes", "old runs"
),
# new information for a single specific file
dplyr::tribble(
~file_id, ~process, ~note,
"6617_IAEA600", "no", "did not inject properly"
)
)
new_info |> knitr::kable()
NA |
TRUE |
yes |
new runs |
NA |
NA |
FALSE |
yes |
old runs |
NA |
6617_IAEA600 |
NA |
no |
NA |
did not inject properly |
# adding it to the isofiles
cf_files3 |>
iso_add_file_info(new_info, by1 = "Run since 2015?", by2 = "file_id") |>
iso_get_file_info(select = !!names(new_info)) |>
knitr::kable()
#> Info: adding new file information ('process', 'info', 'note') to 6 data file(s), joining by 'Run since 2015?' then 'file_id'...
#> - 'Run since 2015?' join: 2/2 new info rows matched 6/6 data files - 1 of these was/were also matched by subsequent joins which took precedence
#> - 'file_id' join: 1/1 new info rows matched 1/6 data files
#> Info: aggregating file info from 6 data file(s), selecting info columns 'file_id', 'Run since 2015?', 'process', 'info', 'note'
continuous_flow_example.cf |
FALSE |
yes |
old runs |
NA |
6632_WSL-2 wood |
FALSE |
yes |
old runs |
NA |
6605_USGS41 |
FALSE |
yes |
old runs |
NA |
6617_IAEA600 |
FALSE |
no |
NA |
did not inject properly |
6630_GlutamicAcid04 |
FALSE |
yes |
old runs |
NA |
continuous_flow_example.dxf |
TRUE |
yes |
new runs |
NA |
Parse
Most file information is initially read as text to avoid cumbersome
specifications during the read process and compatibility issues between
different IRMS file formats. However, many file info columns are not
easily processed as text. The isoreader package therefore provides
several parsing and data extraction functions to facilitate processing
the text-based data (some via functionality implemented by the readr package). See code block
below for examples. For a complete overview, see the
?extract_data
and ?iso_parse_file_info
documentation.
# use parsing and extraction in iso_mutate_file_info
cf_files2 |>
iso_mutate_file_info(
# change type of Peak Center to logical
`Peak Center` = parse_logical(`Peak Center`),
# retrieve first word of file_id
file_id_1st = extract_word(file_id),
# retrieve second word of ID column
file_id_2nd = extract_word(file_id, 2),
# retrieve file extension from the file_id using regular expression
name = extract_substring(ID, "(\\w+)-?(.*)?", capture_bracket = 1)
) |>
iso_get_file_info(select = c(matches("file_id"), ID, name, `Peak Center`)) |>
knitr::kable()
#> Info: mutating file info for 6 data file(s)
#> Info: aggregating file info from 6 data file(s), selecting info columns 'c(matches("file_id"), ID, name, `Peak Center`)'
continuous_flow_example.cf |
continuous |
flow |
F8-5.5uL |
F8 |
NA |
6632_WSL-2 wood |
6632 |
WSL |
WSL-2 wood |
WSL |
NA |
6605_USGS41 |
6605 |
USGS41 |
USGS41 |
USGS41 |
NA |
6617_IAEA600 |
6617 |
IAEA600 |
IAEA600 |
IAEA600 |
NA |
6630_GlutamicAcid04 |
6630 |
GlutamicAcid04 |
GlutamicAcid04 |
GlutamicAcid04 |
NA |
continuous_flow_example.dxf |
continuous |
flow |
acetanilide_1 |
acetanilide_1 |
TRUE |
continuous_flow_example.cf |
F8-5.5uL |
6520 |
NA |
2.79431047797221 |
2013-07-13 23:42:40 |
NA |
# use iso_parse_file_info for simplified parsing of column data types
cf_files2 |>
iso_parse_file_info(
integer = Analysis,
number = `H3 Factor`,
logical = `Peak Center`
) |>
iso_get_file_info() |>
knitr::kable()
#> Info: parsing 3 file info columns for 6 data file(s):
#> - to integer: 'Analysis'
#> - to logical: 'Peak Center'
#> - to number: 'H3 Factor'
#> Info: aggregating file info from 6 data file(s)
continuous_flow_example.cf |
F8-5.5uL |
6520 |
NA |
2.79431 |
2013-07-13 23:42:40 |
NA |
6632_WSL-2 wood |
WSL-2 wood |
NA |
NA |
NA |
2014-10-08 18:27:23 |
29 |
6605_USGS41 |
USGS41 |
NA |
NA |
NA |
2014-10-08 14:14:35 |
1 |
6617_IAEA600 |
IAEA600 |
NA |
NA |
NA |
2014-10-08 16:01:14 |
0.4 |
6630_GlutamicAcid04 |
GlutamicAcid04 |
NA |
NA |
NA |
2014-10-08 18:00:50 |
1 |
continuous_flow_example.dxf |
acetanilide_1 |
2921 |
TRUE |
0.00000 |
2017-02-09 19:55:40 |
0.428 |
Resistors
Additionally, some IRMS data files contain resistor information that
are useful for downstream calculations (see e.g. section on signal
conversion later in this vignette):
continuous_flow_example.cf |
1 |
1e+09 |
2 |
continuous_flow_example.cf |
2 |
1e+12 |
3 |
continuous_flow_example.dxf |
1 |
3e+08 |
28 |
continuous_flow_example.dxf |
2 |
3e+10 |
29 |
continuous_flow_example.dxf |
3 |
1e+11 |
30 |
continuous_flow_example.dxf |
1 |
3e+08 |
44 |
continuous_flow_example.dxf |
2 |
3e+10 |
45 |
continuous_flow_example.dxf |
3 |
1e+11 |
46 |
Reference values
As well as isotopic reference values for the different gases:
# reference delta values without ratio values
cf_files |> iso_get_standards(file_id:reference) |> knitr::kable()
#> Info: aggregating standards info from 6 data file(s)
continuous_flow_example.cf |
methane ref |
H2 |
d 2H/1H |
-151.9 |
VSMOW |
continuous_flow_example.dxf |
N2_zero |
N2 |
d 15N/14N |
0.0 |
Air-N2 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 13C/12C |
0.0 |
VPDB |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 18O/16O |
0.0 |
VSMOW |
# reference values with ratios
cf_files |> iso_get_standards() |> knitr::kable()
#> Info: aggregating standards info from 6 data file(s)
continuous_flow_example.cf |
methane ref |
H2 |
d 2H/1H |
-151.9 |
VSMOW |
H |
R 2H/1H |
0.0001558 |
continuous_flow_example.cf |
methane ref |
H2 |
d 2H/1H |
-151.9 |
VSMOW |
O |
R 17O/16O |
0.0003799 |
continuous_flow_example.cf |
methane ref |
H2 |
d 2H/1H |
-151.9 |
VSMOW |
O |
R 18O/16O |
0.0020052 |
continuous_flow_example.dxf |
N2_zero |
N2 |
d 15N/14N |
0.0 |
Air-N2 |
N |
R 15N/14N |
0.0036782 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 13C/12C |
0.0 |
VPDB |
C |
R 13C/12C |
0.0111802 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 13C/12C |
0.0 |
VPDB |
O |
R 18O/16O |
0.0020672 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 13C/12C |
0.0 |
VPDB |
O |
R 17O/16O |
0.0003860 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 18O/16O |
0.0 |
VSMOW |
H |
R 2H/1H |
0.0001558 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 18O/16O |
0.0 |
VSMOW |
O |
R 17O/16O |
0.0003799 |
continuous_flow_example.dxf |
CO2_zero |
CO2 |
d 18O/16O |
0.0 |
VSMOW |
O |
R 18O/16O |
0.0020052 |
Raw Data
The raw data read from the IRMS files can be retrieved similarly
using the iso_get_raw_data()
function. Most data
aggregation functions also allow for inclusion of file information using
the include_file_info
parameter, which functions
identically to the select
parameter of the
iso_get_file_info
function discussed earlier.
# get raw data with default selections (all raw data, no additional file info)
cf_files |> iso_get_raw_data() |> head(n=10) |> knitr::kable()
#> Info: aggregating raw data from 6 data file(s)
continuous_flow_example.cf |
1 |
0.209 |
194.5682 |
60.01971 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
2 |
0.418 |
194.5418 |
60.04760 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
3 |
0.627 |
194.5365 |
60.21315 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
4 |
0.836 |
194.5630 |
59.91891 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
5 |
1.045 |
194.5735 |
59.71668 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
6 |
1.254 |
194.5444 |
59.69523 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
7 |
1.463 |
194.5153 |
59.58589 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
8 |
1.672 |
194.5233 |
59.72385 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
9 |
1.881 |
194.5096 |
59.73885 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
10 |
2.090 |
194.5206 |
59.73885 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
# get specific raw data and add some file information
cf_files |>
iso_get_raw_data(
# select just time and the m/z 2 and 3 ions
select = c(time.s, v2.mV, v3.mV),
# include the Analysis number fron the file info and rename it to 'run'
include_file_info = c(run = Analysis)
) |>
# look at first few records only
head(n=10) |> knitr::kable()
#> Info: aggregating raw data from 6 data file(s), selecting data columns 'c(time.s, v2.mV, v3.mV)', including file info 'c(run = Analysis)'
continuous_flow_example.cf |
6520 |
0.209 |
194.5682 |
60.01971 |
continuous_flow_example.cf |
6520 |
0.418 |
194.5418 |
60.04760 |
continuous_flow_example.cf |
6520 |
0.627 |
194.5365 |
60.21315 |
continuous_flow_example.cf |
6520 |
0.836 |
194.5630 |
59.91891 |
continuous_flow_example.cf |
6520 |
1.045 |
194.5735 |
59.71668 |
continuous_flow_example.cf |
6520 |
1.254 |
194.5444 |
59.69523 |
continuous_flow_example.cf |
6520 |
1.463 |
194.5153 |
59.58589 |
continuous_flow_example.cf |
6520 |
1.672 |
194.5233 |
59.72385 |
continuous_flow_example.cf |
6520 |
1.881 |
194.5096 |
59.73885 |
continuous_flow_example.cf |
6520 |
2.090 |
194.5206 |
59.73885 |
Data Processing
The isoreader package is intended to make raw stable isotope data
easily accessible. However, as with most analytical data, there is
significant downstream processing required to turn these raw intensity
chromatograms into peak-specific, properly referenced isotopic
measurements. This and similar functionality as well as data
visualization is part of the isoprocessor package which
takes isotopic data through the various corrections in a transparent,
efficient and reproducible manner.
That said, most vendor software also performs some of these
calculations and it can be useful to be able to compare new data
reduction procedures against those implemented in the vendor software.
For this purpose, isoreader retrieves vendor computed data tables
whenever possible, as illustrated below.
Vendor Data Table
As with most data retrieval functions, the
iso_get_vendor_data_table()
function also allows specific
column selection (by default, all columns are selected) and easy
addition of file information via the include_file_info
parameter (by default, none is included).
continuous_flow_example.cf |
1 |
283.404 |
286.330 |
293.018 |
3977.902 |
1075.2188 |
194.4964 |
59.91891 |
18553.91 |
4854.296 |
23408.20 |
18.55391 |
0.004854296 |
18.55876 |
1 |
0.2616320 |
0 |
0.0002614 |
methane ref |
-10.587034 |
-160.8789 |
0.0001307 |
-160.8789 |
0.01306760 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
2 |
318.307 |
321.233 |
327.921 |
3978.824 |
1076.2768 |
194.6741 |
59.72170 |
18558.22 |
4858.212 |
23416.43 |
18.55822 |
0.004858212 |
18.56307 |
NA |
0.2617823 |
0 |
0.0002615 |
methane ref |
-10.018742 |
-160.3969 |
0.0001308 |
-160.3969 |
0.01307511 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
3 |
606.309 |
611.952 |
634.942 |
4992.800 |
1374.8432 |
216.3650 |
65.39321 |
24397.80 |
6433.988 |
30831.79 |
24.39780 |
0.006433988 |
24.40423 |
NA |
0.2637118 |
0 |
0.0002635 |
methane ref |
-2.721810 |
-154.2084 |
0.0001317 |
-154.2084 |
0.01317147 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
4 |
666.083 |
671.517 |
699.314 |
4906.356 |
1351.9323 |
229.7344 |
69.24248 |
24374.92 |
6445.498 |
30820.41 |
24.37492 |
0.006445498 |
24.38136 |
NA |
0.2644316 |
1 |
0.0002642 |
methane ref |
0.000000 |
-151.9000 |
0.0001321 |
-151.9000 |
0.01320741 |
0.0003115 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
5 |
740.696 |
747.802 |
768.075 |
5227.052 |
1176.7574 |
229.8024 |
69.13564 |
18309.28 |
4462.697 |
22771.98 |
18.30928 |
0.004462697 |
18.31375 |
NA |
0.2437396 |
0 |
0.0002436 |
methane ref |
-78.076804 |
-218.1169 |
0.0001218 |
-218.1169 |
0.01217635 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
6 |
801.515 |
809.457 |
829.312 |
5044.300 |
1126.9858 |
229.8969 |
69.30490 |
20955.17 |
5157.040 |
26112.21 |
20.95517 |
0.005157040 |
20.96033 |
NA |
0.2460987 |
0 |
0.0002460 |
methane ref |
-69.011701 |
-210.4288 |
0.0001230 |
-210.4288 |
0.01229606 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
7 |
855.437 |
860.662 |
889.504 |
4128.717 |
1130.0235 |
231.4799 |
68.98743 |
21029.08 |
5558.151 |
26587.23 |
21.02908 |
0.005558151 |
21.03464 |
NA |
0.2643079 |
1 |
0.0002642 |
methane ref |
0.000000 |
-151.9000 |
0.0001321 |
-151.9000 |
0.01320741 |
0.0003115 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
8 |
927.751 |
936.529 |
961.609 |
4534.019 |
1081.2981 |
230.6880 |
68.62187 |
20808.25 |
5482.657 |
26290.90 |
20.80825 |
0.005482657 |
20.81373 |
NA |
0.2634848 |
0 |
0.0002631 |
methane ref |
-4.271874 |
-155.5230 |
0.0001315 |
-155.5230 |
0.01315100 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
9 |
993.377 |
1002.155 |
1023.055 |
4353.581 |
942.3458 |
232.3942 |
69.41825 |
19012.23 |
4761.478 |
23773.71 |
19.01223 |
0.004761478 |
19.01699 |
NA |
0.2504429 |
0 |
0.0002498 |
methane ref |
-54.507987 |
-198.1282 |
0.0001249 |
-198.1282 |
0.01248759 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
10 |
1048.971 |
1055.032 |
1085.964 |
4070.049 |
1115.3502 |
233.3084 |
69.43352 |
20304.21 |
5382.550 |
25686.76 |
20.30421 |
0.005382550 |
20.30959 |
NA |
0.2650953 |
1 |
0.0002642 |
methane ref |
0.000000 |
-151.9000 |
0.0001321 |
-151.9000 |
0.01320741 |
0.0003115 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
11 |
1126.719 |
1135.915 |
1154.307 |
4377.211 |
967.1902 |
230.9224 |
68.91989 |
20212.07 |
5118.810 |
25330.88 |
20.21207 |
0.005118810 |
20.21719 |
NA |
0.2532552 |
0 |
0.0002525 |
methane ref |
-44.315335 |
-189.4838 |
0.0001262 |
-189.4838 |
0.01262220 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
12 |
1191.927 |
1201.332 |
1223.068 |
4383.536 |
931.2333 |
232.2101 |
69.20323 |
20176.05 |
4992.138 |
25168.19 |
20.17605 |
0.004992138 |
20.18104 |
NA |
0.2474289 |
0 |
0.0002467 |
methane ref |
-66.026049 |
-207.8967 |
0.0001234 |
-207.8967 |
0.01233549 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
13 |
1244.177 |
1249.402 |
1283.051 |
4160.401 |
1141.0546 |
230.8278 |
68.62405 |
20694.94 |
5481.328 |
26176.27 |
20.69494 |
0.005481328 |
20.70043 |
NA |
0.2648631 |
1 |
0.0002642 |
methane ref |
0.000000 |
-151.9000 |
0.0001321 |
-151.9000 |
0.01320741 |
0.0003115 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
14 |
1324.433 |
1333.629 |
1356.201 |
4316.019 |
980.2678 |
233.2191 |
69.48585 |
20458.90 |
5319.453 |
25778.35 |
20.45890 |
0.005319453 |
20.46422 |
NA |
0.2600068 |
0 |
0.0002591 |
methane ref |
-19.151240 |
-168.1422 |
0.0001296 |
-168.1422 |
0.01295451 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
15 |
1386.297 |
1395.284 |
1416.811 |
3705.608 |
810.6083 |
220.9844 |
65.88735 |
16664.94 |
4204.549 |
20869.48 |
16.66494 |
0.004204549 |
16.66914 |
NA |
0.2522992 |
0 |
0.0002513 |
methane ref |
-48.806364 |
-193.2927 |
0.0001256 |
-193.2927 |
0.01256289 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
16 |
1453.595 |
1459.447 |
1490.170 |
4182.669 |
1150.8922 |
216.9934 |
64.96403 |
22223.49 |
5898.395 |
28121.88 |
22.22349 |
0.005898395 |
22.22939 |
NA |
0.2654126 |
1 |
0.0002642 |
methane ref |
0.000000 |
-151.9000 |
0.0001321 |
-151.9000 |
0.01320741 |
0.0003115 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
17 |
1600.940 |
1608.673 |
1636.470 |
4302.989 |
1182.7732 |
229.2687 |
68.93950 |
22838.87 |
6044.344 |
28883.22 |
22.83887 |
0.006044344 |
22.84492 |
NA |
0.2646516 |
0 |
0.0002634 |
methane ref |
-2.867311 |
-154.3318 |
0.0001317 |
-154.3318 |
0.01316955 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
18 |
1736.372 |
1739.716 |
1746.195 |
3973.676 |
1077.9145 |
194.8355 |
60.10338 |
18479.60 |
4857.156 |
23336.75 |
18.47960 |
0.004857156 |
18.48445 |
NA |
0.2628388 |
0 |
0.0002616 |
methane ref |
-9.697427 |
-160.1244 |
0.0001308 |
-160.1244 |
0.01307935 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.cf |
19 |
1776.709 |
1779.426 |
1786.114 |
3971.912 |
1077.5780 |
194.9600 |
60.11840 |
18499.15 |
4859.828 |
23358.98 |
18.49915 |
0.004859828 |
18.50401 |
NA |
0.2627055 |
0 |
0.0002615 |
methane ref |
-10.199640 |
-160.5503 |
0.0001307 |
-160.5503 |
0.01307272 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.dxf |
1 |
40.128 |
59.983 |
63.327 |
NA |
NA |
NA |
NA |
NA |
NA |
110929.75 |
NA |
NA |
57.97671 |
1 |
NA |
0 |
NA |
N2_zero |
NA |
NA |
NA |
NA |
NA |
NA |
3024.040 |
2194.322 |
731.3983 |
NA |
NA |
NA |
20.20419 |
16.66439 |
1175.724 |
NA |
NA |
NA |
57524.32 |
41739.97 |
11665.466 |
57.52432 |
0.4173997 |
0.03499640 |
0 |
0.7256056 |
0.0073565 |
0.01600287 |
0.01600287 |
0.0036783 |
0.01600287 |
0.3664779 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.dxf |
2 |
90.915 |
110.770 |
114.114 |
NA |
NA |
NA |
NA |
NA |
NA |
110486.88 |
NA |
NA |
57.83398 |
NA |
NA |
1 |
NA |
N2_zero |
NA |
NA |
NA |
NA |
NA |
NA |
3022.789 |
2193.600 |
716.5056 |
NA |
NA |
NA |
20.37561 |
16.70776 |
1229.999 |
NA |
NA |
NA |
57383.21 |
41636.91 |
11466.758 |
57.38321 |
0.4163691 |
0.03440027 |
0 |
0.7255940 |
0.0073564 |
0.00000000 |
0.00000000 |
0.0036782 |
0.00000000 |
0.3664720 |
0.0073564 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.dxf |
3 |
125.818 |
155.287 |
216.733 |
NA |
NA |
NA |
NA |
NA |
NA |
98168.61 |
NA |
NA |
53.13610 |
NA |
NA |
0 |
NA |
N2_zero |
NA |
NA |
NA |
NA |
NA |
NA |
2073.872 |
1507.741 |
306.0217 |
NA |
NA |
NA |
20.61750 |
16.67424 |
1364.278 |
NA |
NA |
NA |
52731.67 |
38301.92 |
7135.016 |
52.73167 |
0.3830192 |
0.02140505 |
0 |
0.7263552 |
0.0073641 |
1.04910065 |
1.04910065 |
0.0036821 |
1.04910065 |
0.3668551 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
continuous_flow_example.dxf |
4 |
274.208 |
300.124 |
365.750 |
NA |
NA |
NA |
NA |
NA |
NA |
240551.17 |
NA |
NA |
68.82495 |
1 |
NA |
0 |
NA |
CO2_zero |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
2588.446 |
2969.023 |
3634.147 |
NA |
NA |
NA |
1.290191 |
1.269749 |
1.981168 |
NA |
NA |
NA |
NA |
NA |
NA |
89 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
67763.92 |
77523.47 |
95263.78 |
67.76392 |
0.7752347 |
0.2857913 |
1.144023 |
1.405819 |
0.0117810 |
-17.0104406 |
-1.701044e+01 |
0.0040067 |
-3.20667726 |
-3.20667726 |
0.0109776 |
-1.811690e+01 |
1.085845 |
0.0019988 |
-3.16962276 |
0.1994857 |
0.0004017 |
-1.6367818 |
NA |
NA |
continuous_flow_example.dxf |
5 |
416.537 |
436.183 |
446.215 |
NA |
NA |
NA |
NA |
NA |
NA |
328751.58 |
NA |
NA |
93.43697 |
NA |
NA |
0 |
NA |
CO2_zero |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
4948.947 |
5759.321 |
6977.775 |
NA |
NA |
NA |
2.972498 |
3.155700 |
4.344203 |
NA |
NA |
NA |
NA |
NA |
NA |
89 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
91977.27 |
107053.51 |
129720.80 |
91.97727 |
1.0705351 |
0.3891624 |
1.163913 |
1.410357 |
0.0119858 |
0.0797209 |
7.972090e-02 |
0.0040196 |
0.01142322 |
0.01142322 |
0.0111812 |
8.504090e-02 |
1.105752 |
0.0020052 |
0.01124505 |
0.2001210 |
0.0004023 |
0.0058024 |
NA |
NA |
continuous_flow_example.dxf |
6 |
466.906 |
486.761 |
497.002 |
NA |
NA |
NA |
NA |
NA |
NA |
330289.66 |
NA |
NA |
93.87689 |
NA |
NA |
1 |
NA |
CO2_zero |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
4951.985 |
5762.556 |
6982.150 |
NA |
NA |
NA |
3.138675 |
3.423053 |
4.544472 |
NA |
NA |
NA |
NA |
NA |
NA |
89 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
92410.41 |
107549.07 |
130330.19 |
92.41041 |
1.0754907 |
0.3909906 |
1.163820 |
1.410341 |
0.0119849 |
0.0000000 |
2.220446e-13 |
0.0040196 |
0.00000000 |
0.00000000 |
0.0111802 |
2.220446e-13 |
1.105659 |
0.0020052 |
0.00000000 |
0.2001187 |
0.0004023 |
0.0000000 |
0.0119849 |
0.0040196 |
# get specific parts and add some file information
cf_files |>
iso_get_vendor_data_table(
# select peak number, ret. time, overall intensity and all H delta columns
select = c(Nr., Rt, area = `rIntensity All`, matches("^d \\d+H")),
# include the Analysis number fron the file info and rename it to 'run'
include_file_info = c(run = Analysis)
) |>
knitr::kable()
#> Info: aggregating vendor data table from 6 data file(s), including file info 'c(run = Analysis)'
continuous_flow_example.cf |
6520 |
1 |
286.330 |
23408.20 |
-160.8789 |
-160.8789 |
continuous_flow_example.cf |
6520 |
2 |
321.233 |
23416.43 |
-160.3969 |
-160.3969 |
continuous_flow_example.cf |
6520 |
3 |
611.952 |
30831.79 |
-154.2084 |
-154.2084 |
continuous_flow_example.cf |
6520 |
4 |
671.517 |
30820.41 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
5 |
747.802 |
22771.98 |
-218.1169 |
-218.1169 |
continuous_flow_example.cf |
6520 |
6 |
809.457 |
26112.21 |
-210.4288 |
-210.4288 |
continuous_flow_example.cf |
6520 |
7 |
860.662 |
26587.23 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
8 |
936.529 |
26290.90 |
-155.5230 |
-155.5230 |
continuous_flow_example.cf |
6520 |
9 |
1002.155 |
23773.71 |
-198.1282 |
-198.1282 |
continuous_flow_example.cf |
6520 |
10 |
1055.032 |
25686.76 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
11 |
1135.915 |
25330.88 |
-189.4838 |
-189.4838 |
continuous_flow_example.cf |
6520 |
12 |
1201.332 |
25168.19 |
-207.8967 |
-207.8967 |
continuous_flow_example.cf |
6520 |
13 |
1249.402 |
26176.27 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
14 |
1333.629 |
25778.35 |
-168.1422 |
-168.1422 |
continuous_flow_example.cf |
6520 |
15 |
1395.284 |
20869.48 |
-193.2927 |
-193.2927 |
continuous_flow_example.cf |
6520 |
16 |
1459.447 |
28121.88 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
17 |
1608.673 |
28883.22 |
-154.3318 |
-154.3318 |
continuous_flow_example.cf |
6520 |
18 |
1739.716 |
23336.75 |
-160.1244 |
-160.1244 |
continuous_flow_example.cf |
6520 |
19 |
1779.426 |
23358.98 |
-160.5503 |
-160.5503 |
continuous_flow_example.dxf |
2921 |
1 |
59.983 |
110929.75 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
2 |
110.770 |
110486.88 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
3 |
155.287 |
98168.61 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
4 |
300.124 |
240551.17 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
5 |
436.183 |
328751.58 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
6 |
486.761 |
330289.66 |
NA |
NA |
# the data table also provides units if included in the original data file
# which can be made explicit using the function iso_make_units_explicit()
cf_files |>
iso_get_vendor_data_table(
# select peak number, ret. time, overall intensity and all H delta columns
select = c(Nr., Rt, area = `rIntensity All`, matches("^d \\d+H")),
# include the Analysis number fron the file info and rename it to 'run'
include_file_info = c(run = Analysis)
) |>
# make column units explicit
iso_make_units_explicit() |>
knitr::kable()
#> Info: aggregating vendor data table from 6 data file(s), including file info 'c(run = Analysis)'
continuous_flow_example.cf |
6520 |
1 |
286.330 |
23408.20 |
-160.8789 |
-160.8789 |
continuous_flow_example.cf |
6520 |
2 |
321.233 |
23416.43 |
-160.3969 |
-160.3969 |
continuous_flow_example.cf |
6520 |
3 |
611.952 |
30831.79 |
-154.2084 |
-154.2084 |
continuous_flow_example.cf |
6520 |
4 |
671.517 |
30820.41 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
5 |
747.802 |
22771.98 |
-218.1169 |
-218.1169 |
continuous_flow_example.cf |
6520 |
6 |
809.457 |
26112.21 |
-210.4288 |
-210.4288 |
continuous_flow_example.cf |
6520 |
7 |
860.662 |
26587.23 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
8 |
936.529 |
26290.90 |
-155.5230 |
-155.5230 |
continuous_flow_example.cf |
6520 |
9 |
1002.155 |
23773.71 |
-198.1282 |
-198.1282 |
continuous_flow_example.cf |
6520 |
10 |
1055.032 |
25686.76 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
11 |
1135.915 |
25330.88 |
-189.4838 |
-189.4838 |
continuous_flow_example.cf |
6520 |
12 |
1201.332 |
25168.19 |
-207.8967 |
-207.8967 |
continuous_flow_example.cf |
6520 |
13 |
1249.402 |
26176.27 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
14 |
1333.629 |
25778.35 |
-168.1422 |
-168.1422 |
continuous_flow_example.cf |
6520 |
15 |
1395.284 |
20869.48 |
-193.2927 |
-193.2927 |
continuous_flow_example.cf |
6520 |
16 |
1459.447 |
28121.88 |
-151.9000 |
-151.9000 |
continuous_flow_example.cf |
6520 |
17 |
1608.673 |
28883.22 |
-154.3318 |
-154.3318 |
continuous_flow_example.cf |
6520 |
18 |
1739.716 |
23336.75 |
-160.1244 |
-160.1244 |
continuous_flow_example.cf |
6520 |
19 |
1779.426 |
23358.98 |
-160.5503 |
-160.5503 |
continuous_flow_example.dxf |
2921 |
1 |
59.983 |
110929.75 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
2 |
110.770 |
110486.88 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
3 |
155.287 |
98168.61 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
4 |
300.124 |
240551.17 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
5 |
436.183 |
328751.58 |
NA |
NA |
continuous_flow_example.dxf |
2921 |
6 |
486.761 |
330289.66 |
NA |
NA |
For expert users: retrieving all data
For users familiar with the nested data frames from the tidyverse (particularly tidyr’s nest
and
unnest
), there is an easy way to retrieve all data from the
iso file objects in a single nested data frame:
all_data <- cf_files |> iso_get_all_data()
#> Info: aggregating all data from 6 data file(s)
# not printed out because this data frame is very big
Saving collections
Saving entire collections of isofiles for retrieval at a later point
is easily done using the iso_save
function which stores
collections or individual isoreader file objects in the efficient R data
storage format .rds
(if not specified, the extension
.cf.rds
will be automatically appended). These saved
collections can be conveniently read back using the same
iso_read_continuous_flow
command used for raw data
files.
# export to R data archive
cf_files |> iso_save("cf_files_export.cf.rds")
#> Info: exporting data from 6 iso_files into R Data Storage 'cf_files_export.cf.rds'
# read back the exported R data archive
cf_files <- iso_read_continuous_flow("cf_files_export.cf.rds")
#> Info: preparing to read 1 data files (all will be cached)...
#> Info: reading file 'cf_files_export.cf.rds' with '.cf.rds' reader...
#> Info: loaded 6 data files from R Data Storage
#> Info: finished reading 1 files in 0.08 secs
cf_files |> iso_get_data_summary() |> knitr::kable()
#> Info: aggregating data summary from 6 data file(s)
continuous_flow_example.cf |
continuous_flow_example.cf |
NA |
8605 time points, 2 ions (2,3) |
21 entries |
standards, resistors |
6632_WSL-2 wood |
continuous_flow_example.iarc |
Task_0b7e6b49-7756-4cca-b387-4d6617cb28e6 |
1952 time points, 3 ions (45,46,44) |
17 entries |
no method info |
6605_USGS41 |
continuous_flow_example.iarc |
Task_0e08e8b4-c625-4fd7-bf5b-9f4823f660cd |
2387 time points, 2 ions (29,28) |
17 entries |
no method info |
6617_IAEA600 |
continuous_flow_example.iarc |
Task_1de1fdc3-0797-4e44-8357-52acbd0d4a6d |
1796 time points, 3 ions (45,46,44) |
17 entries |
no method info |
6630_GlutamicAcid04 |
continuous_flow_example.iarc |
Task_261a3286-0bc6-4aca-bba2-183c02597d8b |
2386 time points, 2 ions (29,28) |
17 entries |
no method info |
continuous_flow_example.dxf |
continuous_flow_example.dxf |
NA |
2435 time points, 6 ions (28,29,30,44,45,46) |
21 entries |
standards, resistors |
Data Export
At the moment, isoreader supports export of all data to Excel and the
Feather file format
(a Python/R cross-over format). Note that both export methods have
similar syntax and append the appropriate file extension for each type
of export file (.cf.xlsx
and .cf.feather
,
respectively).