Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

is.sorted

Getting and setting 'is.sorted' physical attribute


Description

Functions to mark an ff or ram object as 'is.sorted' and query this. Responsibility to maintain this attribute is with the user.

Usage

## Default S3 method:
is.sorted(x, ...)
## Default S3 replacement method:
is.sorted(x, ...) <- value

Arguments

x

an ff or ram object

...

ignored

value

NULL (to remove the 'is.sorted' attribute) or TRUE or FALSE

Details

Sorting is slow, see sort. Checking whether an object is sorted can avoid unnessary sorting – see is.unsorted, intisasc – but still takes too much time with large objects stored on disk. Thus it makes sense to maintain an attribute, that tells us whether sorting can be skipped. Note that – though you change it yourself – is.sorted is a physical attribute of an object, because it represents an attribute of the data, which is shared between different virtual views of the object.

Value

TRUE (if set to TRUE) or FALSE (if set to NULL or FALSE)

Note

ff will set is.sorted(x) <- FALSE if clone or length<-.ff have increased length.

Author(s)

Jens Oehlschlägel

See Also

is.ordered.ff for testing factor levels, is.unsorted for testing the data, intisasc for a quick version thereof, na.count for yet another physical attribute

Examples

x <- 1:12
  is.sorted(x) <- !( is.na(is.unsorted(x)) || is.unsorted(x))
  is.sorted(x)
  x[1] <- 100L
  message("don't forget to maintain once it's no longer TRUE")
  is.sorted(x) <- FALSE
  message("check whether as 'is.sorted' attribute is maintained")
  !is.null(physical(x)$is.sorted)
  message("remove the 'is.sorted' attribute")
  is.sorted(x) <- NULL
  message("NOTE that querying 'is.sorted' still returns FALSE")
  is.sorted(x)

ff

Memory-Efficient Storage of Large Data on Disk and Fast Access Functions

v4.0.4
GPL-2 | GPL-3 | file LICENSE
Authors
Daniel Adler [aut], Christian Gläser [aut], Oleg Nenadic [aut], Jens Oehlschlägel [aut, cre], Martijn Schuemie [aut], Walter Zucchini [aut]
Initial release
2020-10-13

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.