Determine if a vector is ordered

Maybe is.unsorted is the function your looking for

> is.unsorted(asc)
[1] FALSE
> is.unsorted(rev(des)) # here you need 'rev'
[1] FALSE
> is.unsorted(non)
[1] TRUE

From the Description of is.unsorted you can find:

Test if an object is not sorted (in increasing order), without the cost of sorting it.


Here's one way using ?is.unsorted:

is.sorted <- function(x, ...) {
    !is.unsorted(x, ...) | !is.unsorted(rev(x), ...)
}

Have a look at the additional arguments to is.unsorted, which can be passed here as well.

Tags:

Sorting

R