read.spc
loads frequency spectrum from .spc
file
write.spc
saves frequency spectrum object in .spc
file
read.spc(file) write.spc(spc, file)
character string specifying the pathname of a disk file.
Files with extension .gz
will automatically be compressed/decompressed.
See section "Format" for a description of the required file format
a frequency spectrum, i.e.\ an object of class
spc
read.spc
returns an object of class spc
(see the
spc
manpage for details)
A TAB-delimited text file with column headers but no row names
(suitable for reading with read.delim
). The file must contain
at least the following two columns:
m
frequency class
Vm
number
An optional column labelled VVm
can be used to specify
variances of expected class sizes (for a frequency spectrum derived
from a LNRE model or by binomial interpolation).
These columns may appear in any order in the text file. All other columns will be silently ignored.
If the filename file
ends in the extension .gz
, .bz2
or .xz
,
the disk file will automatically be decompressed (read.spc
) or compressed (write.spc
).
The .spc
file format does not store the values of N
,
V
and VV
explicitly. Therefore, incomplete frequency
spectra and expected spectra with variances cannot be fully
reconstructed from disk files. Saving such frequency spectra (or
loading a spectrum with variance data) will trigger corresponding
warnings.
See the spc
manpage for details on spc
objects. See read.tfl
and read.vgc
for
import/export of other data structures.
# NOT RUN {
## save Italian ultra- frequency spectru to external text file
fname <- tempfile(fileext=".spc")
write.spc(ItaUltra.spc, fname)
## now <fname> is a TAB-delimited text file with columns m and Vm
## we ready it back in
New.spc <- read.spc(fname)
## same spectrum as ItaUltra.spc, compare:
summary(New.spc)
summary(ItaUltra.spc)
stopifnot(isTRUE(all.equal(New.spc, ItaUltra.spc))) # should be identical
# }
# NOT RUN {
## DON'T do the following, incomplete spectrum will not be restored properly !!!
zm <- lnre("zm", ItaUltra.spc) # estimate model
zm.spc <- lnre.spc(zm,N(zm)) # incomplete spectrum from model
write.spc(zm.spc, fname) # WARNINGS
bad.spc <- read.spc(fname) # but this function cannot know something is wrong
summary(zm.spc)
summary(bad.spc) # note that N and V are completely wrong !!!
# }
Run the code above in your browser using DataLab