For an introduction to the track package, see
Overview (?track.intro
).
track(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, exclude = TRUE)
track.assign(x, value, pos = 1, envir = as.environment(pos), flush = TRUE)
untrack(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, all = FALSE, keep.in.db = FALSE)
track.remove(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, all = FALSE, force = TRUE)
track.save(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, all = missing(expr) && missing(list) && missing(pattern) && missing(glob))
track.resave(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, all = missing(expr) && missing(list) && missing(pattern) && missing(glob))
track.flush(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, all = missing(expr) && missing(list) && missing(pattern) && missing(glob), force = FALSE)
track.forget(expr, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, all = FALSE)
track.load(files, pos = 1, envir = as.environment(pos), list = NULL, pattern = NULL, glob = NULL, cache = FALSE, clobber = FALSE, time.of.file = TRUE, warn = TRUE)
pos=
)
of specifying the environment being tracked, but should be rarely needed.TRUE
, operate upon all elegible variables. The
default is FALSE
for functions that can change data, and
TRUE
for functions that merely control whether data is in
memory or file or both.autoTrackExcludePattern
option value. If exclude==TRUE
(the default),
exclude variables that match. If exclude==FALSE
, ignore the
exclusion patterns.TRUE
, the variable is left in the
tracking database, though the link to it is broken (it becomes masked)save()
)TRUE
or FALSE
indicating whether to keep the tracked
object cached in memory TRUE
or FALSE
indicating whether to
overwrite existing objects of the same nameTRUE
, for track.remove
remove orphaned
tracked variables; for track.flush
flush out variables that
would normally be kept in cache. TRUE
, use the access times on the file
to populate the access time fields in the tracking summary.TRUE
, issue warnings about object not acted
upon.track
: start tracking the specified variables
track.assign
: assign a value to a variable (start
tracking variable if it is not already tracked.) Optionally flush the
value out of memory.
untrack
: stop tracking the specified variables, leaving the object in envir
so that it can
still be used. If keep.in.db=TRUE
, the variable is left
in the tracking environment (but is masked), if
keep.in.db=FALSE
(the default),
all trace of the variable is completely removed from the tracking
environment.
track.remove
: completely remove all
traces of a tracked variable (also removes untracked variables)
track.save
: write unsaved variables to disk
track.flush
: write unsaved variables to disk, and remove from memory
track.forget
: delete cached
versions without saving to file (file version will be retrieved next
time the variable is accessed)
track.rescan
: reload variable
values from disk (can forget all cached vars, remove no-longer existing tracked vars)
track.load
: load variables from a
saved RData file into the tracking session - if list
is
supplied, only these variables are loaded in. Already existing
variables will be skipped and not overwritten unless clobber=TRUE
is supplied.
The variables to be acted upon are specified either
in expr
(a variable name, unquoted) or list
(character
vector containing names of variables), or by regular expression pattern
or shell pattern glob
. If no specification is given, all
variables are acted upon.
track
package. ##############################################################
# Warning: running this example will cause variables currently
# in the R global environment to be written to .RData files
# in a tracking database on the filesystem under R's temporary
# directory, and will cause the variables to be removed temporarily
# from the R global environment.
# It is recommended to run this example with a fresh R session
# with no important variables in the global environment.
##############################################################
library(track)
track.start(dir=file.path(tempdir(), 'rdatadir5'))
x <- 33
X <- array(1:24, dim=2:4)
Y <- list(a=1:3,b=2)
X[2] <- -1
track.summary(time=0, access=1, size=FALSE)
y1 <- 2
y2 <- 3
z1 <- 4
z2 <- 5
z3 <- 6
untracked()
track.summary(time=0, access=1, size=FALSE)
ls(all=TRUE)
track.stop(pos=1)
ls(all=TRUE)
a <- 7
b <- 8
save(list=c("a", "b"), file=file.path(tempdir(), "ab.rda"))
remove(list=c("a", "b"))
track.start(dir=file.path(tempdir(), 'rdatadir5'))
track.summary(time=0, access=1, size=FALSE)
track.load(file.path(tempdir(), "ab.rda"))
track.summary(time=0, access=1, size=FALSE)
track.status()
# Would normally not call track.stop(), but do so here to clean up after
# running this example.
track.stop(pos=1, keepVars=TRUE)
Run the code above in your browser using DataLab