Learn Python

Learn Data Structure & Algorithm

Learn Numpy

Pandas Introduction

Pandas Series

Pandas DataFrame

Pandas Read Files

Pandas Some functions and properties

Pandas Math Function

Pandas Selection

Pandas Change Type

Pandas Concatenate & Split

Pandas Sorting

Pandas Filter

Pandas Data Cleaning

Pandas Group by

Pandas Time Series

Pandas Analysis 1

Pandas Analysis 2

Pandas Analysis 3

Matplotlib

Learn Seaborn

Learn Statistics

Learn Math

Learn MATLAB

Learn Machine learning

Learn Github

Learn OpenCV

Learn Deep Learning

Learn MySQL

Learn MongoDB

Learn Web scraping

Learn Excel

Learn Power BI

Learn Tableau

Learn Docker

Learn Hadoop

Sorting in pandas

How to sort ?

Sort_values() function is used to perform sorting. This function has two parameters, 1. by, 2. ascending or descending. Ascending and descending have two values True or False. In by parameter, write column names by which column you want to sort. If you want to sort according to index then use sort_index() function and the parameters are ascending or descending.

Let's see the dataset

Input
import numpy as np
df=pd.read_csv("practice2.csv")
print(df)
Output
Id Name Group_name Total_marks Grade Ranking
0 01 A Science 700 A+ 01
1 02 B Commerce 618 B+ 02
2 03 A Science 700 A+ 01
3 04 D Arts 687 A+ 01
4 05 E Commerce 611 B+ 02
5 06 F Arts 599 C+ 03
6 07 P Science 575 C+ 03
7 08 F Arts 600 C 03
8 09 I Commerce 550 C+ 03
9 10 J Science 650 A+ 01
10 11 K Arts 680 A+ 01
11 12 L Science 570 C+ 03
12 13 M Arts 599 C+ 03
13 14 N Commerce 597 C+ 03
14 15 O Science 697 A+ 01
15 16 B Arts 570 C+ 03
16 17 D Science 588 C+ 03
17 18 E Science 687 A+ 01
18 19 C Commerce 688 A+ 01
19 20 P Arts 588 C+ 03
20 21 C Science 619 B+ 02
21 22 M Commerce 600 B+ 02
22 23 P Arts 700 A+ 01

Example 1:

Input
import numpy as np
x=df.sort_values(by="Grade",ascending=True)
y=df.sort_values(by="Rank",ascending=False)
z=df.sort_index(ascending=False)

print("Sort using Grade column")
print(x)
print("Sort using Rank column")
print(y)
print("Sort in descending order")
print(z)
Output

Sort using Grade column

Id Name Group_name Total_marks Grade Ranking
0 01 A Science 700 A+ 01
18 19 C Commerce 688 A+ 01
17 18 E Science 687 A+ 01
14 15 O Science 697 A+ 01
10 11 K Arts 680 A+ 01
9 10 J Science 650 A+ 01
22 23 P Arts 700 A+ 01
3 04 D Arts 687 A+ 01
2 03 A Science 700 A+ 01
4 05 E Commerce 611 B+ 02
21 22 M Commerce 600 B+ 02
1 02 B Commerce 618 B+ 02
20 21 C Science 619 B+ 02
5 06 F Arts 599 C+ 03
12 13 M Arts 599 C+ 03
13 14 N Commerce 597 C+ 03
15 16 B Arts 570 C+ 03
16 17 D Science 588 C+ 03
19 20 P Arts 588 C+ 03
6 07 P Science 575 C+ 03
11 12 L Science 570 C+ 03

Sort using Rank column

Id Name Group_name Total_marks Grade Ranking
11 12 L Science 570 C+ 03
16 17 D Science 588 C+ 03
5 06 F Arts 599 C+ 03
6 07 P Science 575 C+ 03
7 08 F Arts 600 C 03
8 09 I Commerce 550 C+ 03
19 20 P Arts 588 C+ 03
12 13 M Arts 599 C+ 03
13 14 N Commerce 597 C+ 03
15 16 B Arts 570 C+ 03
21 22 M Commerce 600 B+ 02
20 21 C Science 619 B+ 02
4 05 E Commerce 611 B+ 02
1 02 B Commerce 618 B+ 02
18 19 C Commerce 688 A+ 01
17 18 E Science 687 A+ 01
0 01 A Science 700 A+ 01
14 15 O Science 697 A+ 01
10 11 K Arts 680 A+ 01
9 10 J Science 650 A+ 01
3 04 D Arts 687 A+ 01
2 03 A Science 700 A+ 01
22 23 P Arts 700 A+ 01

Sort in descending order

Id Name Group_name Total_marks Grade Ranking
22 23 P Arts 700 A+ 01
21 22 M Commerce 600 B+ 02
20 21 C Science 619 B+ 02
19 20 P Arts 588 C+ 03
18 19 C Commerce 688 A+ 01
17 18 E Science 687 A+ 01
16 17 D Science 588 C+ 03
15 16 B Arts 570 C+ 03
14 15 O Science 697 A+ 01
13 14 N Commerce 597 C+ 03
12 13 M Arts 599 C+ 03
11 12 L Science 570 C+ 03
10 11 K Arts 680 A+ 01
9 10 J Science 650 A+ 01
8 09 I Commerce 550 C+ 03
7 08 F Arts 600 C 03
6 07 P Science 575 C+ 03
5 06 F Arts 599 C+ 03
4 05 E Commerce 611 B+ 02
3 04 D Arts 687 A+ 01
2 03 A Science 700 A+ 01
1 02 B Commerce 618 B+ 02
0 01 A Science 700 A+ 01

sorting can be done also depends on multiple columns.

Example 2:

Input
import numpy as np
x=df.sort_values(by=["Total marks","Grade"],ascending=False)
y=df.sort_values(by=["Total marks","Grade"],ascending=[True ,False])
print(x)
print(y)
Output
Id Name Group_name Total_marks Grade Ranking
0 01 A Science 700 A+ 01
2 03 A Science 700 A+ 01
22 23 P Arts 700 A+ 01
14 15 O Science 697 A+ 01
18 19 C Commerce 688 A+ 01
3 04 D Arts 687 A+ 01
17 18 E Science 687 A+ 01
9 10 J Science 650 A+ 01
20 21 C Science 619 B+ 02
1 02 B Commerce 618 B+ 02
4 05 E Commerce 611 B+ 02
7 08 F Arts 600 C 03
21 22 M Commerce 600 B+ 02
5 06 F Arts 599 C+ 03
12 13 M Arts 599 C+ 03
16 17 D Science 588 C+ 03
19 20 P Arts 588 C+ 03
10 11 K Arts 680 A+ 01
6 07 P Science 575 C+ 03
11 12 L Science 570 C+ 03
15 16 B Arts 570 C+ 03
13 14 N Commerce 597 C+ 03
8 09 I Commerce 550 C+ 03



Id Name Group_name Total_marks Grade Ranking
8 09 I Commerce 550 C+ 03
13 14 N Commerce 597 C+ 03
11 12 L Science 570 C+ 03
15 16 B Arts 570 C+ 03
6 07 P Science 575 C+ 03
10 11 K Arts 680 A+ 01
16 17 D Science 588 C+ 03
19 20 P Arts 588 C+ 03
5 06 F Arts 599 C+ 03
12 13 M Arts 599 C+ 03
7 08 F Arts 600 C 03
21 22 M Commerce 600 B+ 02
4 05 E Commerce 611 B+ 02
1 02 B Commerce 618 B+ 02
20 21 C Science 619 B+ 02
9 10 J Science 650 A+ 01
3 04 D Arts 687 A+ 01
17 18 E Science 687 A+ 01
18 19 C Commerce 688 A+ 01
14 15 O Science 697 A+ 01
0 01 A Science 700 A+ 01
2 03 A Science 700 A+ 01
22 23 P Arts 700 A+ 01

In example 2, in y variable true is for Total marks and False is for Grade.

CodersAim is created for learning and training a self learner to become a professional from beginner. While using CodersAim, you agree to have read and accepted our terms of use, privacy policy, Contact Us

© Copyright All rights reserved www.CodersAim.com. Developed by CodersAim.