A common task when using pandas DataFrames is to loop over the rows. Pandas provides multiple ways for us to loop over dataframs depending on your needs. In this article, we will learn to loop over pandas arrays using iteritems, iterrows, and itertuples.
The first way to loop over a dataframe is to use the iteritems
method. This iterator returns a tuple containing the column name and the pandas Series (row).
import pandas as pd
df = pd.DataFrame([
{
"person": "James",
"sales": 1000,
},
{
"person": "Clara",
"sales": 3000,
}
])
for col, item in df.iteritems():
print(col)
print(item)
The second way to loop over a dataframe is with the iterrows
method. This iterator retuns the same as iteritems, a tuple containing the column name and the pandas Series.
import pandas as pd
df = pd.DataFrame([
{
"person": "James",
"sales": 1000,
},
{
"person": "Clara",
"sales": 3000,
}
])
for col, item in df.iterrows():
print(col)
print(item)
The third way to loop over a dataframe is using the itertuples
method. Unlike the previous two methods, this will return each row as a Named Tuple.
import pandas as pd
df = pd.DataFrame([
{
"person": "James",
"sales": 1000,
},
{
"person": "Clara",
"sales": 3000,
}
])
for item in df.itertuples():
print(item)