Python/Pandas
pandas IndexError: list index out of range 오류 해결하기
PySun
2025. 6. 19. 08:02
반응형
소개
파이썬의 pandas 라이브러리를 사용할 때 'IndexError: list index out of range'라는 오류가 발생하는 경우가 있습니다. 이 오류는 주로 리스트의 인덱스 범위를 초과하여 접근하려 할 때 발생합니다. 이번 블로그 글에서는 이 문제의 원인과 해결 방법에 대해 깊이 있게 살펴보겠습니다.
에러 발생 예시 코드
먼저, 'IndexError: list index out of range' 에러가 발생할 만한 간단한 예시 코드를 보겠습니다.
import pandas as pd
# 데이터 생성
data = {'A': [1, 2, 3],
'B': [4, 5, 6]}
# DataFrame 생성
df = pd.DataFrame(data)
# 잘못된 인덱스로 접근
print(df.iloc[5]) # 존재하지 않는 인덱스
에러 해결 방법
1. 유효한 인덱스 범위 확인하기
해당 DataFrame의 인덱스를 확인하여 접근하고자 하는 인덱스가 유효한지 먼저 확인하는 것이 중요합니다. 적절한 인덱스 번호를 사용하여 오류를 피할 수 있습니다.
import pandas as pd
# 데이터 생성
data = {'A': [1, 2, 3],
'B': [4, 5, 6]}
# DataFrame 생성
df = pd.DataFrame(data)
# 인덱스 범위 확인
for i in range(len(df)):
print(df.iloc[i]) # 유효한 인덱스 내에서 출력
2. .iloc 사용 시 조건 추가하기
데이터 접근 시 조건을 추가하여 인덱스가 유효한지 확인한 후 접근하면 안전합니다. 이 방법을 통해 예기치 않은 에러를 피할 수 있습니다.
import pandas as pd
# 데이터 생성
data = {'A': [1, 2, 3],
'B': [4, 5, 6]}
# DataFrame 생성
df = pd.DataFrame(data)
# 인덱스 유효성 검사 및 접근
index_to_access = 5
if index_to_access < len(df):
print(df.iloc[index_to_access])
else:
print(f"인덱스 {index_to_access}는 유효한 범위를 초과합니다.")
마무리
이번 블로그에서는 pandas 사용 시 발생할 수 있는 'IndexError: list index out of range' 에러에 대한 원인과 해결 방법을 살펴보았습니다. 인덱스 접근 시 항상 유효한 범위를 확인하고, 조건문을 활용하여 안전하게 접근하는 것이 중요합니다. pandas를 사용할 때는 제대로 된 인덱스를 활용하여 데이터에 접근함으로써 여러분의 코드가 한층 더 안정적일 수 있도록 노력해 보세요!
반응형