Pandas 데이터프레임을 사용할 때 처음 조금 낯설게 느껴지는 것이 있습니다. 반복문에서 데이터프레임의 행들을 얻고 싶을 때, 본능적으로 다음과 같이 사용하려고 합니다. 하지만, 이렇게 하면 데이터 프레임의 컬럼들만 얻게 됩니다.
잘못된 접근
import pandas as pd
df = pd.DataFrame([[95, 92, 88], [84, 67, 88], [91, 99, 68], [87, 79, 81], [77, 92, 85]],
index=['A', 'B', 'C', 'D', 'E'],
columns=['math', 'english', 'history'],
)
print(df, '\n')
for row in df:
print(row)
옳은 접근
데이터프레임의 행을 얻고 싶을 때는 df.iterrows()를 사용할 수 있습니다.
import pandas as pd
df = pd.DataFrame([[95, 92, 88], [84, 67, 88], [91, 99, 68], [87, 79, 81], [77, 92, 85]],
index=['A', 'B', 'C', 'D', 'E'],
columns=['math', 'english', 'history'],
)
print(df, '\n')
for idx, row in df.iterrows():
print("행 인덱스: ", idx)
print(row['math'], row['english'], row['history'], '\n')
참고자료
'코딩 > pandas, matplotlib' 카테고리의 다른 글
[matplotlib] 박스플롯(boxplot) 해석하기 (0) | 2022.11.04 |
---|---|
[pandas] 컬럼 값이 특정 조건에 부합하는 행들의 특정 컬럼 값 수정하기 (0) | 2022.10.02 |
[pandas] 데이터프레임 행 또는 컬럼 삭제하기, drop() 메소드 (0) | 2022.10.01 |
[pandas] SQL의 JOIN 역할을 하는 pd.merge와 df.join (0) | 2022.08.15 |
[pandas] 파이썬 판다스로 엑셀 파일을 읽고 쓰려면 openpyxl도 추가로 설치해야 함 (0) | 2022.08.15 |
[pandas] 중복 데이터 제거하기, 데이터프레임 drop_duplicates() 메소드 (0) | 2022.08.01 |
[pandas] 누락된 데이터가 - 등의 기호로 표현되어 있을 때 NaN으로 변경하는 방법, replace() 메소드 (0) | 2022.07.29 |
[pandas] 특정 날짜 이후 데이터만 선택하기 (0) | 2022.07.26 |