pandas.DataFrame.itertuples — pandas 0.24.0rc1 documentation (original) (raw)
DataFrame.
itertuples
(index=True, name='Pandas')[source]¶
Iterate over DataFrame rows as namedtuples.
Parameters: | index : bool, default True If True, return the index as the first element of the tuple. name : str, default “Pandas” The name of the returned namedtuples or None to return regular tuples. |
---|---|
Yields: | collections.namedtuple Yields a namedtuple for each row in the DataFrame with the first field possibly being the index and following fields being the column values. |
Notes
The column names will be renamed to positional names if they are invalid Python identifiers, repeated, or start with an underscore. With a large number of columns (>255), regular tuples are returned.
Examples
df = pd.DataFrame({'num_legs': [4, 2], 'num_wings': [0, 2]}, ... index=['dog', 'hawk']) df num_legs num_wings dog 4 0 hawk 2 2 for row in df.itertuples(): ... print(row) ... Pandas(Index='dog', num_legs=4, num_wings=0) Pandas(Index='hawk', num_legs=2, num_wings=2)
By setting the index parameter to False we can remove the index as the first element of the tuple:
for row in df.itertuples(index=False): ... print(row) ... Pandas(num_legs=4, num_wings=0) Pandas(num_legs=2, num_wings=2)
With the name parameter set we set a custom name for the yielded namedtuples:
for row in df.itertuples(name='Animal'): ... print(row) ... Animal(Index='dog', num_legs=4, num_wings=0) Animal(Index='hawk', num_legs=2, num_wings=2)