본문 바로가기

About/Python

[Python] 판다스(Pandas)에서 DataFrame 행 반복 처리하기 - iterrows

판다스(Pandas)는 파이썬에서 데이터 분석을 위해 널리 사용되는 라이브러리입니다. 이 글에서는 판다스의 DataFrame에서 행을 반복(iterate) 처리하는 방법에 대해 알아보겠습니다.

DataFrame 행 반복의 기본: iterrows()

판다스에서 DataFrame의 각 행을 반복하는 기본적인 방법은 iterrows() 함수를 사용하는 것입니다. 이 함수는 DataFrame의 행을 (인덱스, 시리즈) 쌍으로 반복합니다.

예시 코드

import pandas as pd

# 예제 DataFrame 생성
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})

# iterrows를 사용하여 행 반복
for index, row in df.iterrows():
    print(index, row['A'], row['B'])

이 코드는 각 행의 인덱스와 컬럼 'A', 'B'의 값을 출력합니다.

주의사항

  • iterrows()는 각 행을 시리즈로 반환하기 때문에, 행간의 데이터 타입(dtypes)은 보존되지 않습니다. 데이터 타입을 보존하면서 행을 반복하려면 itertuples() 함수를 사용하는 것이 좋습니다.
  • 반복 중인 객체를 수정하는 것은 권장되지 않습니다. 이는 모든 경우에 작동하는 것이 보장되지 않으며, 반복자가 복사본을 반환할 수 있기 때문에 수정이 반영되지 않을 수 있습니다.

판다스 DataFrame에서 행을 반복하는 방법을 이해하고 활용하면 데이터 분석 및 처리 과정에서 더 유연하고 효율적으로 작업을 수행할 수 있습니다.


참조: