Sorting Dataframes in Python using pandas sort_values() Function.
Understanding pandas sort_values() Function
The pandas sort_values()
function is a powerful tool used to sort dataframes in Python. It allows developers to sort the rows of a dataframe based on specific columns. This is especially useful when dealing with larger datasets, as it allows developers to easily view and analyze data.
One of the key parameters of the sort_values()
function is by
. This parameter specifies the column(s) that the dataframe should be sorted by. For example, if we have a dataframe that contains information about cars, and we want to sort the dataframe based on the price of each car, we would use the following code:
import pandas as pd
df = pd.read_csv('cars.csv')
sorted_df = df.sort_values(by=['price'])
This will sort the df
dataframe based on the price
column, and return a new dataframe called sorted_df
.
Another important parameter is the ascending
parameter. By default, this is set to True
, which means that the dataframe will be sorted in ascending order. However, if we want to sort the dataframe in descending order, we can set this parameter to False
. For example:
import pandas as pd
df = pd.read_csv('cars.csv')
sorted_df = df.sort_values(by=['price'], ascending=False)
In this case, the sorted_df
dataframe will be sorted in descending order based on the price
column.
It’s worth noting that the sort_values()
function works with both numeric and nonnumeric data. For example, if we have a dataframe that contains information about books, and we want to sort the dataframe based on the author’s last name, we would use the following code:
import pandas as pd
df = pd.read_csv('books.csv')
sorted_df = df.sort_values(by=['author_last_name'])
This will sort the df
dataframe based on the author_last_name
column, and return a new dataframe called sorted_df
.
In conclusion, the sort_values()
function is a powerful tool that allows developers to easily sort dataframes in Python, based on the column(s) of their choice. It’s an essential tool for data wrangling and analysis, and can save a lot of time and effort when working with large datasets.
Sorting Dataframes in Ascending Order
Sorting Dataframes in Ascending Order
To sort a DataFrame in ascending order, developers can use the sort_values()
function with ascending=True
. The sort_values()
function sorts the rows of a DataFrame based on one or more column(s) specified by the by
parameter. If no value is specified for the ascending
parameter, it defaults to True
.
Here’s an example of how you can sort a DataFrame in ascending order based on a single column:
import pandas as pd
df = pd.read_csv('data.csv')
sorted_df = df.sort_values(by='column_name', ascending=True)
print(sorted_df)
In this example, the sort_values()
function sorts df
by the column_name
column in ascending order. By default, ascending=True
, so it can be omitted if desired.
You can also sort a DataFrame by multiple columns in ascending order:
import pandas as pd
df = pd.read_csv('data.csv')
sorted_df = df.sort_values(by=['column1', 'column2'], ascending=True)
print(sorted_df)
In this example, df
is sorted by column1
first, and then within each group of identical values in column1
, by column2
. Both columns are sorted in ascending order.
The sort_values()
function can also handle a mixture of numeric and string values. For example, if you have a DataFrame that contains both text and numerical values in one column, and you want to sort it in ascending order based on that column:
import pandas as pd
df = pd.read_csv('data.csv')
sorted_df = df.sort_values(by='column_name', ascending=True)
print(sorted_df)
This will sort df
in ascending order based on column_name
, regardless of whether the values in that column are text or numerical.
In short, sorting a Pandas DataFrame in ascending order involves using the sort_values()
function and specifying the column(s) to sort by, along with ascending=True
. Sorting can be performed on one or multiple columns, and works with both text and numerical data.
Sorting Dataframes in Descending Order
Sorting a Pandas DataFrame in descending order is very similar to sorting it in ascending order. Instead of using ascending=True
, however, developers can set ascending=False
to sort the DataFrame in descending order.
Here’s an example of how you can sort a DataFrame in descending order based on a single column:
import pandas as pd
df = pd.read_csv('data.csv')
sorted_df = df.sort_values(by='column_name', ascending=False)
print(sorted_df)
This code will sort df
in descending order based on the column_name
column.
You can also sort a DataFrame by multiple columns in descending order:
import pandas as pd
df = pd.read_csv('data.csv')
sorted_df = df.sort_values(by=['column1', 'column2'], ascending=False)
print(sorted_df)
In this example, df
is sorted by column1
first, and then within each group of identical values in column1
, by column2
. Both columns are sorted in descending order.
Like sorting in ascending order, sorting in descending order can handle a mixture of text and numerical values in the same column:
import pandas as pd
df = pd.read_csv('data.csv')
sorted_df = df.sort_values(by='column_name', ascending=False)
print(sorted_df)
This will sort df
in descending order based on column_name
, regardless of whether the values in that column are text or numerical.
In summary, sorting a Pandas DataFrame in descending order involves using the sort_values()
function and specifying the column(s) to sort by, along with ascending=False
. Sorting can be performed on one or multiple columns, and works with both text and numerical data.
Summary
Sorting and organizing data is essential for any data science work. The pandas sort_values()
function is a useful tool that allows developers to easily sort and organize dataframes in Python based on specific columns. You can sort data in ascending order, descending order and even mixtures of text and numerical data. As a developer, mastering the sort_values()
function will improve your data wrangling skills, save time, and enhance the quality of data analysis.
Related Posts

The Ultimate Python Pandas Guide
By: Adam RichardsonIn this ultimate guide, you will learn how to use Pandas to perform various data manipulation tasks, such as cleaning, filtering, sorting and aggregating data.

A StepbyStep Guide to Joining Pandas DataFrames
By: Adam RichardsonLearn how to join pandas DataFrames efficiently with this stepbystep guide. Improve your data analysis skills and optimize your workflow today!

Appending DataFrames in Pandas: A Tutorial
By: Adam RichardsonLearn how to combine two DataFrames in Pandas using the Append function. This tutorial will guide you on how to join multiple DataFrames with code examples.

Calculating Mean Value Using mean() Function in Pandas
By: Adam RichardsonLearn how to use the mean() function in pandas to calculate the mean value of a dataset in Python. Improve your data analysis skills with this tutorial.