- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
How to sort one column of an R data frame in ascending and the other in descending order?
Sorting of columns of an R data frame is not difficult but sometimes we want to sort them in opposite orders, for example, we might want to sort some columns in ascending order and some in descending order. This variation in sorting purpose makes it a little complicated. Therefore, we can use negation with sort function to sort the columns that we want to sort in descending order.
Example
Consider the below data frame −
set.seed(111) x1<-rnorm(20,2) x2<-rpois(20,5) x3<-sample(1:10,20,replace=TRUE) x4<-sample(1:50,20) x5<-rpois(20,10) x6<-sample(1:100,20) df<-data.frame(x1,x2,x3,x4,x5,x6) df
Output
x1 x2 x3 x4 x5 x6 1 2.2352207 6 7 18 14 4 2 1.6692641 4 5 32 11 35 3 1.6883762 6 1 19 12 74 4 -0.3023457 8 10 33 14 65 5 1.8291240 5 10 25 8 9 6 2.1402782 4 7 27 10 55 7 0.5025733 4 4 28 7 83 8 0.9898116 7 4 44 10 47 9 1.0515244 6 1 11 9 88 10 1.5060378 7 9 31 13 67 11 1.8263259 6 6 12 12 48 12 1.5934012 5 8 41 13 44 13 3.8456363 1 3 6 8 27 14 2.3940541 4 10 39 9 58 15 2.7975285 12 8 38 13 10 16 0.4333346 5 10 50 11 99 17 1.9141490 5 1 9 6 40 18 1.6408605 5 9 40 6 32 19 0.8063910 2 10 35 8 5 20 2.3641867 7 10 36 6 15
Sorting column 1 in ascending order and sorting column 6 based on column 1 −
Example
df[order(df[,1],-df[,6]),]
Output
x1 x2 x3 x4 x5 x6 4 -0.3023457 8 10 33 14 65 16 0.4333346 5 10 50 11 99 7 0.5025733 4 4 28 7 83 19 0.8063910 2 10 35 8 5 8 0.9898116 7 4 44 10 47 9 1.0515244 6 1 11 9 88 10 1.5060378 7 9 31 13 67 12 1.5934012 5 8 41 13 44 18 1.6408605 5 9 40 6 32 2 1.6692641 4 5 32 11 35 3 1.6883762 6 1 19 12 74 11 1.8263259 6 6 12 12 48 5 1.8291240 5 10 25 8 9 17 1.9141490 5 1 9 6 40 6 2.1402782 4 7 27 10 55 1 2.2352207 6 7 18 14 4 20 2.3641867 7 10 36 6 15 14 2.3940541 4 10 39 9 58 15 2.7975285 12 8 38 13 10 13 3.8456363 1 3 6 8 27
Example
df[order(-df[,2],-df[,3]),]
Output
x1 x2 x3 x4 x5 x6 15 2.7975285 12 8 38 13 10 4 -0.3023457 8 10 33 14 65 20 2.3641867 7 10 36 6 15 10 1.5060378 7 9 31 13 67 8 0.9898116 7 4 44 10 47 1 2.2352207 6 7 18 14 4 11 1.8263259 6 6 12 12 48 3 1.6883762 6 1 19 12 74 9 1.0515244 6 1 11 9 88 5 1.8291240 5 10 25 8 9 16 0.4333346 5 10 50 11 99 18 1.6408605 5 9 40 6 32 12 1.5934012 5 8 41 13 44 17 1.9141490 5 1 9 6 40 14 2.3940541 4 10 39 9 58 6 2.1402782 4 7 27 10 55 2 1.6692641 4 5 32 11 35 7 0.5025733 4 4 28 7 83 19 0.8063910 2 10 35 8 5 13 3.8456363 1 3 6 8 27
Example
df[order(-df[,2],df[,5]),]
Output
x1 x2 x3 x4 x5 x6 15 2.7975285 12 8 38 13 10 4 -0.3023457 8 10 33 14 65 20 2.3641867 7 10 36 6 15 8 0.9898116 7 4 44 10 47 10 1.5060378 7 9 31 13 67 9 1.0515244 6 1 11 9 88 3 1.6883762 6 1 19 12 74 11 1.8263259 6 6 12 12 48 1 2.2352207 6 7 18 14 4 17 1.9141490 5 1 9 6 40 18 1.6408605 5 9 40 6 32 5 1.8291240 5 10 25 8 9 16 0.4333346 5 10 50 11 99 12 1.5934012 5 8 41 13 44 7 0.5025733 4 4 28 7 83 14 2.3940541 4 10 39 9 58 6 2.1402782 4 7 27 10 55 2 1.6692641 4 5 32 11 35 19 0.8063910 2 10 35 8 5 13 3.8456363 1 3 6 8 27
- Related Articles
- How to change the order of one column data frame and get the output in data frame format in R?
- How to sort an R data frame rows in alphabetical order?
- How to sort each row of an R data frame in increasing order?
- How to sort a numerical factor column in an R data frame?
- Sort an array of strings in ascending order with each string sorted in descending order
- How to arrange the fractions in ascending order and descending order?
- How to sort an R data frame column without losing row names?
- How to add one column in an R data frame to rest of the next columns?
- How to change the order of columns in an R data frame?
- How to sort a column of data.table object in ascending order using column name stored in a vector in R?
- How to change the row order in an R data frame?
- How to replace missing values in a column with corresponding values in other column of an R data frame?
- How to replace NA with 0 and other values to 1 in an R data frame column?
- How to get top values of a numerical column of an R data frame in decreasing order?
- How to sort an ArrayList in Java in descending order?

Advertisements