본문 바로가기
Python/Pandas

pandas TypeError: 'int' object is not iterable 오류 해결하기

by PySun 2025. 4. 6.
반응형

소개

Pandas에서 'TypeError: 'int' object is not iterable' 에러는 매우 일반적으로 발생하는 문제입니다. 이 오류는 보통 우리가 필요로 하는 데이터 구조 (리스트, 튜플, 데이터프레임 등) 대신 정수형 변수를 전달할 때 발생합니다. 이 블로그 글에서는 이 에러의 원인과 해결 방법을 함께 살펴보겠습니다.

에러 발생 예시 코드

우선, 'TypeError: 'int' object is not iterable' 에러가 발생할 수 있는 간단한 예시 코드를 살펴보겠습니다.

import pandas as pd

# 숫자 하나로 DataFrame 생성
data = 10
df = pd.DataFrame(data)
print(df)

에러 해결 방법

1. 리스트나 다른 iterable 객체로 감싸기

Pandas DataFrame을 생성할 때는 단일 정수가 아니라 iterable 객체를 전달해야 합니다. 따라서, 정수를 리스트로 감싸서 전달해줍니다.

import pandas as pd

# 숫자를 리스트로 감싸서 DataFrame 생성
data = [10]
df = pd.DataFrame(data)
print(df)

2. 2D 리스트 사용하여 DataFrame 만들기

또는, 다수의 데이터를 포함한 2D 리스트나 배열을 사용하여 DataFrame을 생성할 수 있습니다. 이렇게 하면 각 행과 열을 쉽게 정의할 수 있습니다.

import pandas as pd

# 2D 리스트로 DataFrame 생성
data = [[1, 2, 3], [4, 5, 6]]
df = pd.DataFrame(data, columns=['A', 'B', 'C'])
print(df)

3. 데이터프레임의 열 추가

이미 존재하는 데이터프레임에 열을 추가하려고 할 때도 비슷한 오류가 발생할 수 있습니다. 이 경우, 올바른 형태로 데이터를 전달해야 합니다.

import pandas as pd

# 초기 DataFrame 생성
data = {'A': [1, 2, 3]}
df = pd.DataFrame(data)

# 열 추가 시 리스트로 값 전달
df['B'] = [4, 5, 6]
print(df)

마무리

이번 블로그 글에서는 Pandas에서 발생하는 'TypeError: 'int' object is not iterable' 에러에 대한 간단한 해결 방법을 살펴보았습니다. 숫자를 iterable 객체로 감싸거나, 2D 리스트를 사용하여 DataFrame을 생성함으로써 이 오류를 해결할 수 있습니다. Pandas를 사용할 때는 항상 데이터의 형태를 확인하고, 적절한 형식으로 입력하는 것이 중요합니다. 데이터 분석의 과정에서 예기치 않은 상황을 맞이할 수도 있지만, 이 블로그 글에서 배운 방법들을 활용해 조금 더 자신감을 가지고 작업할 수 있길 바랍니다!

반응형