Soyeon -
   It sounds like you want a combination of a numerical
sort and a lexigraphical sort. I think they need to be done separately, and then joined back together:

myvec = scan(,what='')
1: 4  5  6  8  9  11 Y  1  13 15 16 20 X  2  3  10 14 19 XY 7  12 18 17 22 21
26: Read 25 items
myvecn = as.numeric(myvec)
Warning message:
NAs introduced by coercion
c(sort(myvecn),sort(myvec[is.na(myvecn)]))
 [1] "1"  "2"  "3"  "4"  "5"  "6"  "7"  "8"  "9"  "10" "11" "12" "13" "14" "15"
[16] "16" "17" "18" "19" "20" "21" "22" "X"  "XY" "Y"

                                        - Phil Spector
                                         Statistical Computing Facility
                                         Department of Statistics
                                         UC Berkeley
                                         spec...@stat.berkeley.edu



On Wed, 10 Mar 2010, Soyeon Kim wrote:

Dear All,

I want to sort a character type vector.
the vector is
[1] 4  5  6  8  9  11 Y  1  13 15 16 20 X  2  3  10 14 19 XY 7  12 18 17 22
[25] 21

and I want to sort  1-22 X Y XY or 1-22 X XY Y.
How can I do that?

Thanks,

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to