update.ff | R Documentation |
update
copies updates one ff object with the content of another object.
## S3 method for class 'ff'
update(object, from, delete = FALSE, bydim = NULL, fromdim = NULL
, BATCHSIZE = .Machine$integer.max, BATCHBYTES = getOption("ffbatchbytes")
, VERBOSE = FALSE, ...)
## S3 method for class 'ffdf'
update(object, from, ...)
object |
an ff object to which to update |
from |
an object from which to uodate |
delete |
NA for quick update with file-exchange, TRUE for quick update with deleting the 'from' object after the update, can speed up updating significantly |
bydim |
how to interpret the content of the object, see |
fromdim |
how to interpret the content of the 'from' object, see |
BATCHSIZE |
|
BATCHBYTES |
|
VERBOSE |
|
... |
further arguments |
If the source object is.ff
and not delete=FALSE
then instead of slow copying we - if possible - try to swap and rename the files behind the ff objects.
Quick update requires that the two ff objects are vectorCompatible
,
that both don't use vw
,
that they have identical maxlength
and identical levels.ff
.
An ff object like the input 'object' updated with the content of the 'from' object.
You don't have a guarantee that with delete=TRUE
the 'from' object gets deleted or with delete=NA
the 'from' objects carries the content of 'object'.
Such expectations only turn true if really a quick update was possible.
Jens Oehlschlägel
ff
, clone
, ffvecapply
, vectorCompatible
, filename
x <- ff(1:100)
y <- ff(-(1:100))
message("You should make it a habit to re-assign the return value
of update although this is not needed currently.")
x <- update(x, from=y)
x
y
x[] <- 1:100
x <- update(x, from=y, delete=NA)
x
y
x <- update(x, from=y, delete=TRUE)
x
y
x
rm(x,y); gc()
## Not run:
message("timings")
x <- ff(1:10000000)
y <- ff(-(1:10000000))
system.time(update(x, from=y))
system.time(update(y, from=x, delete=NA))
system.time(update(x, from=y, delete=TRUE))
rm(x,y); gc()
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.