In this article, we will discuss how to use Dataframe.iat[], with few examples.
In Pandas, the DataFrame provides a property iat[], to access the single values from Dataframe by their row and column number.
Syntax is as follows,
pandas.DataFrame.iat[row_number , column_number]
Arguments:
- row_number: As indexing starts from 0, so to select the value from the nth row, the row number should be n-1.
- column_number: As indexing starts from 0, so to select the value from the nth column, the column number should be n-1.
Returns:
It returns a single value at the given row and column number from the DataFrame. Whereas, if any column or row number is out of bound, it will raise IndexError.
Let’s see some examples,
Frequently Asked:
Dataframe.iat[] – Examples
Let’s first create a DataFrame from a list of tuples i.e.
import pandas as pd # List of Tuples students = [('jack', 34, 'Sydeny', 'Australia'), ('Riti', 30, 'Delhi', 'India'), ('Vikas', 31, 'Mumbai', 'India'), ('Neelu', 32, 'Bangalore', 'India'), ('John', 16, 'New York', 'US'), ('Mike', 17, 'las vegas', 'US')] # Create a DataFrame from list of tuples df = pd.DataFrame( students, columns=['Name', 'Age', 'City', 'Country'], index=['a', 'b', 'c', 'd', 'e', 'f']) print(df)
Output:
Name Age City Country a jack 34 Sydeny Australia b Riti 30 Delhi India c Vikas 31 Mumbai India d Neelu 32 Bangalore India e John 16 New York US f Mike 17 las vegas US
Now get the cell value at row number 2 and column number 3
# Get Cell Value from row index position 2 and column index position 3 value = df.iat[2, 3] print (value)
Output:
India
As indexing starts from 0 in Pandas, therefore,
- Row number 2 points to the third row of the Dataframe
- Column number 3 points to the fourth row of the Dataframe
Let’s see an example where we will try to fetch the cell value by giving out of bound row number i.e.
# Get Cell Value from row number 11 and column number 3 value = df.iat[11, 3] print (value)
Output:
IndexError: index 11 is out of bounds for axis 0 with size 6
As row number 11 doesn’t exist in the dataframe, so it is an out-of-bound value. Therefore it returned an IndexError.
The complete example is as follows,
import pandas as pd # List of Tuples students = [('jack', 34, 'Sydeny', 'Australia'), ('Riti', 30, 'Delhi', 'India'), ('Vikas', 31, 'Mumbai', 'India'), ('Neelu', 32, 'Bangalore', 'India'), ('John', 16, 'New York', 'US'), ('Mike', 17, 'las vegas', 'US')] # Create a DataFrame from list of tuples df = pd.DataFrame( students, columns=['Name', 'Age', 'City', 'Country'], index=['a', 'b', 'c', 'd', 'e', 'f']) print(df) # Get Cell Value from row index position 2 and column index position 3 value = df.iat[2, 3] print (value) # Get Cell Value from row number 11 and column number 3 value = df.iat[11, 3] print (value)
Output:
Name Age City Country a jack 34 Sydeny Australia b Riti 30 Delhi India c Vikas 31 Mumbai India d Neelu 32 Bangalore India e John 16 New York US f Mike 17 las vegas US India IndexError: index 11 is out of bounds for axis 0 with size 6
Summary:
We can use the DataFrame.iat[] to access a single cell value of Pandas Dataframe by row and column number.