/
Вопросы и ответы
/
Python
/

Как сделать цикл по строкам dataframe python

Как сделать цикл по строкам dataframe python

4 года назад

Человек-Молекула

Ответы

0

В Pandas для перебора фрейма данных используем функцию items():

for col_name, data in df.items():
    print("col_name:",col_name, "\ndata:",data)

Столбец индекса остается неизменным на протяжении всей итерации, так как это связанный индекс для значений.

В то время как df.items() перебирает строки по столбцам, выполняя цикл для каждого столбца, мы можем использовать iterrows() для получения всех строковых данных индекса.

for i, row in df.iterrows():
    print(f"Index: {i}")
    print(f"{row}\n")

Функция itertuples() также вернет генератор, который генерирует значения строк в кортежах:

for row in df.itertuples():
    print(row)

! Официальная документация Pandas предупреждает, что итерация - это медленный процесс. Если вы перебираете DataFrame для изменения данных, векторизация будет более быстрой альтернативой. Кроме того, не рекомендуется изменять данные во время итерации по строкам, поскольку Pandas иногда возвращает копию данных в строке, а не ее ссылку, что означает, что не все данные на самом деле будут изменены.

3 года назад

Игорь Гахов

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845