Open In App

Get last n records of a Pandas DataFrame

Last Updated : 26 Jul, 2020
Comments
Improve
Suggest changes
Like Article
Like
Report

Let's discuss how to get last n records of a Pandas DAtaframe. There can be various methods to get the last n records of a Pandas DataFrame. Lets first make a dataframe:
Example:

Python3
# Import Required Libraries
import pandas as pd
import numpy as np

# Create a dictionary for the dataframe
dict = {'Name': ['Sukritin', 'Sumit Tyagi', 'Akriti Goel',
                 'Sanskriti', 'Abhishek Jain'],
        'Age': [22, 20, np.inf, -np.inf, 22], 
        'Marks': [90, 84, 33, 87, 82]}

# Converting Dictionary to Pandas Dataframe
df = pd.DataFrame(dict)

# Print Dataframe
df

Output: 
 


 

Method 1: Using tail() method

Use pandas.DataFrame.tail(n) to get the last n rows of the DataFrame. It takes one optional argument n (number of rows you want to get from the end). By default n = 5, it return the last 5 rows if the value of n is not passed to the method.

Syntax: 

df.tail(n)

Example:

Python3
# Getting last 3 rows from df
df_last_3 = df.tail(3)

# Printing df_last_3
print(df_last_3)

Output: 
 


 

Method 2: Using pandas.DataFrame.iloc

Use pandas.DataFrame.iloc to get last n rows. It is similar to the list slicing.
Syntax: 

df.iloc[-n:]

Example:

Python3
# Getting last 3 rows from df
df_last_3 = df.iloc[-3:]

# Printing df_last_3
print(df_last_3)

Output: 
 

Method 3: Display last n records of specific columns
Display last n records for the specific column

Python3
# Getting last 2 rows of columns 
# Age and Marks from df
df_last_2 = df[['Age', 'Marks']].tail(2)

# Printing df_last_2
print(df_last_2)

Output: 
 

Method 4: Display last n records from last n columns
Display last n records for the last n columns using pandas.DataFrame.iloc

Python3
# Getting last n rows and last n columns from df
df_last_2_row_col = df.iloc[-2:,-2:]

# Printing df_last_2
print(df_last_2_row_col)

Output: 


Next Article

Similar Reads