Open In App

How to Reverse Row in Pandas DataFrame?

Improve
Improve
Like Article
Like
Save
Share
Report

In this article, we will learn how to reverse a row in a pandas data frame using Python

With the help of Pandas, we can perform a reverse operation by using loc(), iloc(), reindex(), slicing, and indexing on a row of a data set. 

Creating Dataframe

Let’s create a simple data frame with a dictionary, say column names are: ‘Income’, ‘Expenses’, ‘Profit’.

Python3




# Import pandas package
import pandas as pd
 
# Define a dictionary containing employee data
data = {'Income': [150000, 13000, 11000, 11000],
        'Expenses': [10000, 11000, 7000, 50000],
        'Profit': [5000, 2000, 4000, 6000]
        }
 
 
# Convert the dictionary into DataFrame
dataframe = pd.DataFrame(data)
 
# Observe the result
dataframe


Output:

 Reverse Row in Pandas DataFrame

 

Using iloc() function to Reverse Row

Reversing the rows of a data frame in pandas can be done in python by invoking the iloc() function.  Let us know how to reverse the rows of a data frame in pandas.

Syntax: DataFrame.iloc[]

Parameters: Index Position: Index position of rows in integer or list of integer.

Return: Data frame or Series depending on parameters

Python3




# Reverse rows using iloc() Function
Data_reverse_row_1 = dataframe.iloc[::-1]
 
# Observe the result
Data_reverse_row_1


Output:

Reverse Row in Pandas DataFrame

reversed database

Using loc() function to Reverse Row

Reversing the rows of a data frame in pandas can be done in python by invoking the loc() function. The panda’s dataframe.loc() attribute accesses a set of rows and columns in the given data frame by either a label or a boolean array.

Syntax: DataFrame.loc()

Parameter : None

Returns : Scalar, Series, DataFrame

Python3




# Reverse rows using iloc() Function
Data_reverse_row_2 = dataframe.loc[::-1]
 
# Observe the result
Data_reverse_row_2


Output:

 Reverse Row in Pandas DataFrame

 

Note: .loc() and .iloc() use the indexers to select for indexing operators.

Using reindex() function to Reverse Row

Reverse rows of the data frame using reindex() Function. The pandas dataframe.reindex() function concatenates the dataframe to a new index with optional filling logic, placing NA/NaN at locations that have no value in the previous index.

Syntax: DataFrame.reindex(index=None)

Parameter : index, columns : New labels / index to conform to. Preferably an Index object to avoid duplicating data

Returns : reindexed : DataFrame

Python3




# reversing a DataFrame
# retrieving row by reindex method
df.reindex(index=dataframe.index[::-1])


Output:

 Reverse Row in Pandas DataFrame

 

Using dataframe indexing to Reverse Row

Reverse rows using data frame indexing in python. In Python, we can set the index of a dataframe in reverse. In this method, we create a Python list and pass it’s an index to the dataframe() function’s index parameter. Let’s implement this through Python code.

Syntax: DataFrame[start:end:slicing]

Python3




# Reverse slicing columns in data frame
dataframe[::-1]


Output:

 Reverse Row in Pandas DataFrame

 

Using the reset_Index() function to Reverse Row

Here we use the reset_index() function to reset the index for the entire database and also pass Drop=True to drop all old indices.

Python3




# Here we are just resetting the indexing for the entire database
# and reversing the database.
 
d = dataframe.loc[::-1].reset_index(drop=True).head()
print(d)


Output:

 Reverse Row in Pandas DataFrame

reversed database



Last Updated : 15 Sep, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads