as.ff {ff} | R Documentation |
Coercing ram to ff and ff to ram objects
Description
Coercing ram to ff and ff to ram objects while optionally modifying object features.
Usage
as.ff(x, ...)
as.ram(x, ...)
## Default S3 method:
as.ff(x, filename = NULL, overwrite = FALSE, ...)
## S3 method for class 'ff'
as.ff(x, filename = NULL, overwrite = FALSE, ...)
## Default S3 method:
as.ram(x, ...)
## S3 method for class 'ff'
as.ram(x, ...)
Arguments
x |
any object to be coerced |
filename |
path and filename |
overwrite |
TRUE to overwrite the old filename |
... |
|
Details
If as.ff.ff
is called on an 'ff' object or as.ram.default
is called on a non-ff object AND no changes are required, the input object 'x' is returned unchanged.
Otherwise the workhorse clone.ff
is called.
If no change of features are requested, the filename attached to the object remains unchanged, otherwise a new filename is requested (or can be set by the user).
Value
A ram or ff object.
Note
If you use ram <- as.ram(ff)
for caching, please note that you must close.ff
before you can write back as.ff(ram, overwrite=TRUE)
(see examples).
Author(s)
Jens Oehlschlägel
See Also
as.ff.bit
, ff
, clone
, as.vmode
, vmode
, as.hi
Examples
message("create ff")
myintff <- ff(1:12)
message("coerce (=clone) integer ff to double ff")
mydoubleff <- as.ff(myintff, vmode="double")
message("cache (=clone) integer ff to integer ram AND close original ff")
myintram <- as.ram(myintff) # filename is retained
close(myintff)
message("modify ram cache and write back (=clone) to ff")
myintram[1] <- -1L
myintff <- as.ff(myintram, overwrite=TRUE)
message("coerce (=clone) integer ram to double ram")
mydoubleram <- as.ram(myintram, vmode="double")
message("coerce (inplace) integer ram to double ram")
myintram <- as.ram(myintram, vmode="double")
message("more classic: coerce (inplace) double ram to integer ram")
vmode(myintram) <- "integer"
rm(myintff, myintram, mydoubleff, mydoubleram); gc()