-
DataFrame.iterrows()
[source] -
Iterate over DataFrame rows as (index, Series) pairs.
Returns: it : generator
A generator that iterates over the rows of the frame.
See also
-
itertuples
- Iterate over DataFrame rows as namedtuples of the values.
-
iteritems
- Iterate over (column name, Series) pairs.
Notes
-
Because
iterrows
returns a Series for each row, it does not preserve dtypes across the rows (dtypes are preserved across columns for DataFrames). For example,12345678910>>> df
=
pd.DataFrame([[
1
,
1.5
]], columns
=
[
'int'
,
'float'
])
>>> row
=
next
(df.iterrows())[
1
]
>>> row
int
1.0
float
1.5
Name:
0
, dtype: float64
>>>
print
(row[
'int'
].dtype)
float64
>>>
print
(df[
'int'
].dtype)
int64
To preserve dtypes while iterating over the rows, it is better to use
itertuples()
which returns namedtuples of the values and which is generally faster thaniterrows
. - You should never modify something you are iterating over. This is not guaranteed to work in all cases. Depending on the data types, the iterator returns a copy and not a view, and writing to it will have no effect.
-
DataFrame.iterrows()

2025-01-10 15:47:30
Please login to continue.