Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
st: RE: Sorting matrix on a column
From
Nick Cox <[email protected]>
To
"'[email protected]'" <[email protected]>
Subject
st: RE: Sorting matrix on a column
Date
Fri, 21 Jan 2011 17:37:02 +0000
I had a quick look through various add-ons that were published by user-programmers about a decade ago and could not spot anything tailor-made.
So my guess is that the price of an all-Stata solution is that you need to write your own Stata program to do this.
The alternative is one line long
mata : st_matrix("a", sort(st_matrix("a"), 1))
where of course "a" should be replaced by your own matrix name in " ".
I really recommend that you get into Mata. Even a little goes a very long way.
Nick
[email protected]
Bert Jung
I need to sort a matrix according to a specific column. For example:
mat a = ( ( 4 \ 2 \ 3 \ 1 ) , ( 90 \ 95 \ 92 \ 96 ) )
mat list a
a[4,2]
c1 c2
r1 4 90
r2 2 95
r3 3 92
r4 1 96
I would like to sort this matrix on the first column in decreasing order to get:
1 96
2 95
3 92
4 90
I realize that Mata's -sort(,)- may do this easily but don't have much
experience with Mata and prefer a "regular" Stata solution.
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/