pandas.DataFrame.iterrows#
- DataFrame.iterrows()[источник]#
Итерация по строкам DataFrame как парам (индекс, Series).
- Возвращает:
- indexметка или кортеж меток
Индекс строки. Кортеж для MultiIndex.
- данныеSeries
Данные строки в виде Series.
Смотрите также
DataFrame.itertuplesИтерация по строкам DataFrame как namedtuples значений.
DataFrame.itemsИтерация по парам (имя столбца, Series).
Примечания
Потому что
iterrowsвозвращает Series для каждой строки, он не сохранять dtypes по строкам (dtypes сохраняются по столбцам для DataFrames).Для сохранения типов данных при итерации по строкам лучше использовать
itertuples()который возвращает именованные кортежи значений и который обычно быстрее, чемiterrows.Вам следует никогда не изменять что-то, по чему вы итерируете. Это не гарантирует работу во всех случаях. В зависимости от типов данных, итератор возвращает копию, а не представление, и запись в нее не окажет эффекта.
Примеры
>>> 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