Hi,
You can also use:
within(small,{order(value)})
#?????????????????????????? file.name???? value
#1???? /storage/storage0/59Off.Rtable 0.2203863
#3 /storage/storage0/5912314ff.Rtable 0.2886594
#2??? /storage/storage0/5912On.Rtable 0.4052370
A.K.
----- Original Message -----
From: Berend Hasselman <bhh at xs4all.nl>
To: Alaios <alaios at yahoo.com>
Cc: R help <R-help at r-project.org>
Sent: Tuesday, September 11, 2012 11:00 AM
Subject: Re: [R] Sort or Permutate
On 11-09-2012, at 13:13, Alaios wrote:
> Dear all,
> I am having a struct that contains on the first column file names and on
the second column a number which is a "rating" of the file on first
column
>
> A small subset looks like that
>
> small
>? ? ? [,1]? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ?
> [1,] "/storage/storage0/59Off.Rtable"
> [2,] "/storage/storage0/5912On.Rtable"
> [3,] "/storage/storage0/5912314ff.Rtable"
>? ? ? [,2]? ? ? ? ? ? ?
> [1,] "0.220386301811093"
> [2,] "0.405237035258638"
> [3,] "0.288659374128626"
>
>
> I want based on the values of column two to rearrange table elements by
keeping though the row elements together.
> For example if I order those in ascending order should look like
>
> small
>? ? ?
> [,1]? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ?
> [1,] "/storage/storage0/59Off.Rtable"
> [2,] "/storage/storage0/5912314ff.Rtable"
> [3,] " /storage/storage0/5912On.Rtable"
>
>? ? ? [,2]? ? ? ? ? ? ?
> [1,] "0.220386301811093"
> [2,] "0.288659374128626"
> [3,] "0.405237035258638"
>
> I have tried with sort, sort.list and order but I have failed .
> I do not quite undestand how one can complete this task in R.
> Could you please spend some time helping me?
Please provide data using dput.
You can do it using order() like this
small <- data.frame(file.name=c(
"/storage/storage0/59Off.Rtable",
"/storage/storage0/5912On.Rtable",
"/storage/storage0/5912314ff.Rtable"), stringsAsFactors=FALSE,
value=c(
0.220386301811093,
0.405237035258638,
0.288659374128626)
)
v.index <- order(small[,"value"])
small <- small[v.index,]
small
Berend
______________________________________________
R-help at 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.