I am a novice user of R and am stumbling on how to order a dataset produced during my session. I have a 1863 row X 14 column dataset that I want to put out to a file. I want the output sorted by the first column and then by the second column both in ascending order. The first column is character and the second is numeric (I hope). I used an "as.numeric" function to assign that variable. Is there a reason R would not accept "0" or "00" as a numeric value? I have tried using the order function but the examples I have seen don't seem to translate for me. I tried something like this assuming my dataset is called "data". datanew<-data[order(var1, var2),] print(datanew) This generates an "incorrect number of dimensions" error in the order function. I also tried listing all the variables in the parentheses. Your help is appreciated.
If you want to sort by the columns with the names 'var1' and 'var2', you would do: newdata <- data[order(data$var1, data$var2), ] On Wed, May 30, 2012 at 6:07 PM, tony.anderson <tony.anderson at noaa.gov> wrote:> I am a novice user of R and am stumbling on how to order a dataset produced > during my session. > > I have a 1863 row X 14 column dataset that I want to put out to a file. ?I > want the output sorted by the first column and then by the second column > both in ascending order. ?The first column is character and the second is > numeric (I hope). ?I used an "as.numeric" function to assign that variable. > ?Is there a reason R would not accept "0" or "00" as a numeric value? > > I have tried using the order function but the examples I have seen don't > seem to translate for me. ?I tried something like this assuming my dataset > is called "data". > > datanew<-data[order(var1, var2),] > print(datanew) > > This generates an "incorrect number of dimensions" ?error in the order > function. ?I also tried listing all the variables in the parentheses. > > Your help is appreciated. > > ______________________________________________ > 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.-- Jim Holtman Data Munger Guru What is the problem that you are trying to solve? Tell me what you want to do, not how you want to do it.
Hi Tony, Try this: dataT<-data.frame(Var1=rep(c("Sole","Lack","ABD","Zad"),rep(5,4)), Var2=rnorm(20,0.5),Var3=runif(20,0.4)) ?dataT1<-dataT[with(dataT,order(Var1,Var2,Var3)),] dataT1 ? Var1??????? Var2????? Var3 12? ABD -0.19842353 0.4333720 13? ABD? 0.14050814 0.9194297 11? ABD? 1.07544531 0.4539302 14? ABD? 1.17039127 0.7840392 15? ABD? 1.23533897 0.5105670 6? Lack -0.14460512 0.7106342 10 Lack? 0.36935316 0.6118821 9? Lack? 0.62868056 0.5915753 ----------------------------------------------- A.K. ----- Original Message ----- From: tony.anderson <tony.anderson at noaa.gov> To: r-help at r-project.org Cc: Sent: Wednesday, May 30, 2012 6:07 PM Subject: [R] Sorting a data set I am a novice user of R and am stumbling on how to order a dataset produced during my session. I have a 1863 row X 14 column dataset that I want to put out to a file.? I want the output sorted by the first column and then by the second column both in ascending order.? The first column is character and the second is numeric (I hope).? I used an "as.numeric" function to assign that variable.? Is there a reason R would not accept "0" or "00" as a numeric value? I have tried using the order function but the examples I have seen don't seem to translate for me.? I tried something like this assuming my dataset is called "data". datanew<-data[order(var1, var2),] print(datanew) This generates an "incorrect number of dimensions"? error in the order function.? I also tried listing all the variables in the parentheses. Your help is appreciated. ______________________________________________ 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.