Returns order with regard to one or more ff vectors
fforder(...
, index = NULL
, use.index = NULL
, aux = NULL
, auxindex = NULL
, has.na = TRUE
, na.last = TRUE
, decreasing = FALSE
, BATCHBYTES = getOption("ffmaxbytes")
, VERBOSE = FALSE
)
An ff vector with the positions that ore required to sort the input as specified
-- with an attribute na.count
with as many values as columns in ...
one of more ff vectors which define the order
an optional ff integer vector used to store the order output
A boolean flag telling fforder whether to use the positions in 'index' as input. If you do this, it is your responsibility to assure legal positions - otherwise you risk a crash.
An optional named list of ff vectors that can be used for temporary copying
-- the names of the list identify the vmodes
for which the respective ff vector is suitable.
An optional ff intger vector for temporary storage of integer positions.
boolean scalar telling fforder whether the vector might contain NA
s.
Note that you risk a crash if there are unexpected NA
s with has.na=FALSE
boolean scalar telling fforder whether to order NA
s last or first.
Note that 'boolean' means that there is no third option NA
as in order
boolean scalar telling fforder whether to order increasing or decreasing
maximum number of RAM bytes fforder should try not to exceed
cat some info about the ordering
Jens Oehlschlägel
fforder tries to order the vector in-RAM, if not possible it uses (a yet simple) out-of-memory algorithm.
Like ramorder
the in-RAM ordering method is choosen depending on context information.
ramorder
, ffsort
, ffdforder
, ffindexget
x <- ff(sample(1e5, 1e6, TRUE))
y <- ff(sample(1e5, 1e6, TRUE))
d <- ffdf(x, y)
i <- fforder(y)
y[i]
i <- fforder(x, index=i)
x[i]
d[i,]
i <- fforder(x, y)
d[i,]
i <- ffdforder(d)
d[i,]
rm(x, y, d, i)
gc()
Run the code above in your browser using DataLab