How to select n rows and n columns of a Pandas DataFrame using Python

7-Day Challenge

Land Your First Data Science Job

A proven roadmap to prepare for $75K+ entry-level data roles. Perfect for Data Scientist ready to level up their career.

Build portfolios that hiring managers love
Master the Python and SQL essentials to be industry-ready
Practice with real interview questions from tech companies
Access to the $100k/y Data Scientist Cheatsheet

Join thousands of developers who transformed their careers through our challenge. Unsubscribe anytime.

Being able to go through rows and columns is crucially important for a Data Scientist.

There is two axis so to say two indexes you can provide to go through a DataFrame.

  1. Rows
  2. Columns

And there is one method that can handle everything you need.

The DataFrame.iloc[] method.

And you can use this method to either select a specific row or columns but also ranges.

The same as lists

As you might remember lists can be sliced. e.g.

fruits = ["Apple", "Orange", "Strawberry", "Blueberry"]

# Prints from the index number two to the end
print(fruits[2:]) # ['Strawberry', 'Blueberry']

The DataFrame.iloc[] method can be used the exact same way.

With iloc you will need to pass the row and column slice you want to subselect.

The DataFrame accepts [row, columns] indexes. so to say e.g. df.iloc[2,:] means the row at index 2 and all the columns.

A specific row and column

As you can see in this example we can filter for a specific row and column.

import pandas as pd
import numpy as np

# We create our dataframe
df = pd.DataFrame({"col1": range(0,10),
                   "col2": range(10,20)})

# We print our dataframe
print(df)

# We print the second row of the second column of our dataframe
print(df.iloc[2,1])

A specific range of rows and columns

We can use the DataFrame.iloc[] slicing method.

import pandas as pd
import numpy as np

# We create our dataframe
df = pd.DataFrame({"col1": range(0,10),
                   "col2": range(10,20),
                   "col3": range(20,30)})

# We print our dataframe
print(df)

# We print the 4th row till the sixth of the column index 1 till end (3-6 col2 to col3)
print(df.iloc[3:7,1:])

Here you are! you now know how to select a specific row of DataFrame.

More on fundamentals

If you want to know more about Python fundamentals without headaches... check out the other articles I wrote by clicking just here:

Fundamentals - The Python You Need
We gathered the only Python essentials that you will probably ever need.

7-Day Challenge

Land Your First Data Science Job

A proven roadmap to prepare for $75K+ entry-level data roles. Perfect for Data Scientist ready to level up their career.

Build portfolios that hiring managers love
Master the Python and SQL essentials to be industry-ready
Practice with real interview questions from tech companies
Access to the $100k/y Data Scientist Cheatsheet

Join thousands of developers who transformed their careers through our challenge. Unsubscribe anytime.

Free Newsletter

Master Data Science in Days, Not Months 🚀

Skip the theoretical rabbit holes. Get practical data science skills delivered in bite-sized lessons – Approach used by real data scientist. Not bookworms. 📚

Weekly simple and practical lessons
Access to ready to use code examples
Skip the math, focus on results
Learn while drinking your coffee

By subscribing, you agree to receive our newsletter. You can unsubscribe at any time.