Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Change language to: Français - Português - 日本語 - Русский

Please note that the recommended version of Scilab is 6.0.2. This page might be outdated.
However, this page did not exist in the previous stable version.

Scilab help >> Elementary Functions > Search and sort > lex_sort

lex_sort

lexicographic matrix rows sorting

Calling Sequence

[N, [k]]=lex_sort(M [,sel] [,'unique'])

Arguments

M

real matrix

N

real matrix

k

column vector of integers

Description

the lex_sort function is now obsolete. It can be replaced by functions gsort and unique.

N=lex_sort(M) sorts the rows (as a group) of the matrix M in ascending order. If required the output argument k contains the ordering: [N,k]=lex_sort(M) returns k such as N is equal to M(k,:) .

N=lex_sort(M,sel [,'unique']) produces the same result as the following sequence of instructions:

[N,k]=lex_sort(M(:,sel) [,'unique']);
N=M(k,:)

The 'unique' flag has to be given if one wants to retain only unique rows in the result. Note that lex_sort(M,sel,'unique') retains only rows such that M(:,sel) are unique.

Examples

M=round(2*rand(20,3));

lex_sort(M)
lex_sort(M,'unique')
[N,k]=lex_sort(M,[1 3],'unique')