Python/Pandas

pandas KeyError: ('column1', 'column2') 오류 해결하기

PySun 2025. 5. 9. 08:03
반응형

소개

파이썬에서 데이터 분석을 할 때 pandas 라이브러리를 자주 사용합니다. 그러나 데이터프레임을 다루다 보면 'KeyError: ('column1', 'column2')'와 같은 오류에 직면하게 됩니다. 이 오류는 지정한 열(column)이 데이터프레임에 존재하지 않을 때 발생합니다. 이번 블로그 글에서는 이 오류의 원인과 해결 방법에 대해 알아보겠습니다.

에러 발생 예시 코드

먼저, 'KeyError: ('column1', 'column2')' 오류가 발생할 수 있는 간단한 예시 코드를 살펴보겠습니다.

import pandas as pd

# 간단한 데이터프레임 생성
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35]
}
df = pd.DataFrame(data)

# 존재하지 않는 열에 접근
selected_columns = df[['column1', 'column2']]
print(selected_columns)

에러 해결 방법

1. 올바른 열 이름 확인하기

가장 먼저 확인해야 할 것은 데이터프레임에 포함된 열의 이름입니다. 이 경우, 'column1'과 'column2'라는 열 이름은 존재하지 않기 때문에 오류가 발생합니다. 열 이름을 확인하기 위해 'columns' 속성을 사용할 수 있습니다.

import pandas as pd

# 간단한 데이터프레임 생성
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35]
}
df = pd.DataFrame(data)

# 데이터프레임의 열 이름 확인
print(df.columns)

2. 올바른 열 이름으로 수정하기

확인한 열 이름을 바탕으로 코드에서 해당 열 이름으로 수정하면 됩니다. 데이터프레임이 가진 이름과 일치하도록 변경해 보세요.

import pandas as pd

# 간단한 데이터프레임 생성
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35]
}
df = pd.DataFrame(data)

# 올바른 열 이름으로 접근
selected_columns = df[['name', 'age']]
print(selected_columns)

3. 여러 열이 있을 때도 안전하게 처리하기

여러 열을 선택할 때 일부 열이 없을 경우를 대비하여, 'get' 메서드를 사용하는 것도 유용합니다. 이 방법은 존재하지 않는 열을 무시하고도 작업을 수행할 수 있게 합니다.

import pandas as pd

# 간단한 데이터프레임 생성
data = {
    'name': ['Alice', 'Bob', 'Charlie'],
    'age': [25, 30, 35]
}
df = pd.DataFrame(data)

# 존재하지 않는 열을 포함하더라도 안전하게 데이터프레임을 선택
selected_columns = df[['name', 'age', 'column1']] # column1은 존재하지 않음
print(selected_columns.get('column1', pd.Series()))
print(selected_columns[['name', 'age']])

마무리

이번 블로그 글에서는 pandas에서 발생하는 'KeyError: ('column1', 'column2')' 오류를 다루었습니다. 데이터프레임의 열 이름을 확인하고, 올바른 이름으로 수정하거나 안전하게 처리하는 방법을 통해 이 오류를 해결할 수 있었습니다. pandas를 사용하면서 발생할 수 있는 다양한 오류에 대한 이해를 높이는 길이 되기를 바랍니다. 데이터 분석이 좀 더 즐겁고 원활하길 기원합니다!

반응형