ffsort | R Documentation |
Sorting: sort an ff vector – optionally in-place
ffsort(x
, aux = NULL
, has.na = TRUE
, na.last = TRUE
, decreasing = FALSE
, inplace = FALSE
, decorate = FALSE
, BATCHBYTES = getOption("ffmaxbytes")
, VERBOSE = FALSE
)
x |
an ff vector |
aux |
NULL or an ff vector of the same type for temporary storage |
has.na |
boolean scalar telling ffsort whether the vector might contain |
na.last |
boolean scalar telling ffsort whether to sort |
decreasing |
boolean scalar telling ffsort whether to sort increasing or decreasing |
inplace |
boolean scalar telling ffsort whether to sort the original ff vector ( |
decorate |
boolean scalar telling ffsort whether to decorate the returned ff vector with |
BATCHBYTES |
maximum number of RAM bytes ffsort should try not to exceed |
VERBOSE |
cat some info about the sorting |
ffsort tries to sort the vector in-RAM respecting the BATCHBYTES limit.
If a fast sort it not possible, it uses a slower in-place sort (shellsort).
If in-RAM is not possible, it uses (a yet simple) out-of-memory algorithm.
Like ramsort
the in-RAM sorting method is choosen depending on context information.
If a key-index sort can be used, ffsort completely avoids merging disk based subsorts.
If argument decorate=TRUE
is used, then na.count(x)
will return the number of NAs
and is.sorted(x)
will return TRUE if the sort was done with na.last=TRUE
and decreasing=FALSE
.
An ff vector – optionally decorated with is.sorted
and na.count
, see argument 'decorate'
the ff vector may not have a names attribute
Jens Oehlschlägel
ramsort
, fforder
, ffdfsort
n <- 1e6
x <- ff(c(NA, 999999:1), vmode="double", length=n)
x <- ffsort(x)
x
is.sorted(x)
na.count(x)
x <- ffsort(x, decorate=TRUE)
is.sorted(x)
na.count(x)
x <- ffsort(x, BATCHBYTES=n, VERBOSE=TRUE)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.