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)), check.names=FALSE, ...)
write.txt.long(object, file=stop("file is required"), 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=stop("file is required"), 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,
...)
Import and Export of hyperSpec objects
Besides save
and load
, two general
ways to import and export data into hyperSpec
objects exist.
read.txt.long
: 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
("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
.
read.txt.wide
: Besides save
and load
, two general ways to import and
export data into hyperSpec
objects exist.
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
.
read.txt.long
import
export
[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
IO
file
- 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
}
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)
read.txt.wide
read.txt.wide
write.txt.long
write.txt.long
write.txt.wide
write.txt.wide