save
and load
, two general
ways to import and export data into hyperSpec
objects exist.read.txt.long(file = stop("file is required"),
cols = list(.wavelength = expression(lambda/nm), spc = "I / a.u."),
header = TRUE, ...) read.txt.wide(file = stop("file is required"),
cols = list(spc = "I / a.u.", .wavelength = expression(lambda/nm)),
sep = "", row.names = NULL, check.names = FALSE, ...)
write.txt.long(object, file = "",
order = c(".rownames", ".wavelength"), na.last = TRUE,
decreasing = FALSE, quote = FALSE, sep = "",
row.names = FALSE, cols = NULL, col.names = TRUE,
col.labels = FALSE, append = FALSE, ...)
write.txt.wide(object, file = "", cols = NULL,
quote = FALSE, sep = "", row.names = FALSE,
col.names = TRUE, header.lines = 1,
col.labels = if (header.lines == 1) FALSE else TRUE,
append = FALSE, ...)
- file
{filename or connection}
- cols
{the column names specifying the column order.
For data import, a list with elements colname =
label
; for export a character vector with the colnames.
Use wavelength
to specify the wavelengths.}
- header
{the file has (shall have) a header line}
- ...
{arguments handed to
read.table
and
write.table
, respectively.}
- decreasing
{logical vector giving the sort order}
- check.names
{handed to
read.table
. Make sure this is
FALSE
, if the column names of the spectra are the
wavelength values.}
- object
{the hyperSpec
object}
- order
{which columns should be
order
ed? order
is used as
index vector into a data.frame
with columns given
by cols
.}
- na.last
{handed to order
by
write.txt.long
.}
- quote,sep,row.names,col.names
{have their usual
meaning (see read.table
and
write.table
), but different default
values.}
- col.labels
{Should the column labels be used rather
than the colnames?}
- append
{Should the output be appended to an
existing file?}
- header.lines
{Toggle one or two line header
(wavelengths in the second header line) for
write.txt.wide
}
Firstly, hyperSpec objects can be imported and exported
as ASCII files.
Besides save
and
load
, two general ways to import and
export data into hyperSpec
objects exist.
hyperSpec comes with a number of pre-defined functions to
import manufacturer specific file formats. For details,
see vignette ("file-io")
.
read.spc
imports Thermo
Galactic's .spc file format, and ENVI files may be read
using read.ENVI
.
These functions are very flexible and provide lots of
arguments.
If you use them to read or write manufacturer specific
ASCII formats, please consider writing a wrapper function
and contributing this function to hyperSpec . An
example is in the flu vignette (see
vignette ("flu", package = "hyperSpec"
).
Note that R accepts many packed formats for ASCII files,
see connections
. For .zip files, see
unzip
.
For further information, see the examples below and the
documentation of R.matlab
.
Firstly, hyperSpec objects can be imported and exported
as ASCII files.
A second option is using the package
R.matlab
which provides the
functions readMat
and
writeMat
.
hyperSpec comes with a number of pre-defined functions to
import manufacturer specific file formats. For details,
see vignette ("fileio")
.
read.spc
imports Thermo
Galactic's .spc file format, and ENVI files may be read
using read.ENVI
.
These functions are very flexible and provide lots of
arguments.
If you use them to read or write manufacturer specific
ASCII formats, please consider writing a wrapper function
and contributing this function to hyperSpec . An
example is in the flu vignette (see
vignette ("flu", package = "hyperSpec"
).
Note that R accepts many packed formats for ASCII files,
see connections
. For .zip files, see
unzip
.
For further information, see the examples below,
vignette ("fileio")
and the documentation of
R.matlab
.
vignette ("file-io")
## export & import matlab files
if (require (R.matlab)){
# export to matlab file
writeMat ("test.mat", x = flu[[]], wavelength = flu@wavelength,
label = lapply (flu@label, as.character))
# reading a matlab file
data <- readMat ("test.mat")
print (data)
mat <- new ("hyperSpec", spc = data$x,
wavelength = as.numeric(data$wavelength),
label = data$label[,,1])
}
## ascii export & import
write.txt.long (flu, file = "flu.txt", cols = c(".wavelength", "spc", "c"),
order = c("c", ".wavelength"),
decreasing = c(FALSE, TRUE))
read.txt.long (file = "flu.txt", cols = list (.wavelength = expression (lambda / nm),
spc= "I / a.u", c = expression ("/" (c, (mg/l)))))
write.txt.wide (flu, file = "flu.txt", cols = c("c", "spc"),
col.labels = TRUE, header.lines = 2, row.names = TRUE)
write.txt.wide (flu, file = "flu.txt", col.labels = FALSE, row.names = FALSE)
read.txt.wide (file = "flu.txt",
cols = list (c=expression ("/"("c", "mg/l")), spc="I / a.u", .wavelength = "lambda / nm"),
header = TRUE)
[object Object]
read.table
and
write.table
R.matlab
for .mat files
read.ENVI
for ENVI data
read.spc
for .spc files
Manufacturer specific file formats:
scan.txt.Renishaw
vignette ("fileio")
and
http://hyperspec.r-forge.r-project.org/fileio.pdf ,
respectively
file
IO