Pandas에서 두 개의 시리즈(Series)를 단순히 pd.concat()으로 연결하면 각 시리즈의 기존 인덱스가 그대로 유지되어 인덱스가 중복되는 문제가 발생합니다. 이 글에서는 ignore_index=True 옵션을 활용해 인덱스를 0부터 새로 부여하면서 두 시리즈를 깔끔하게 하나로 합치는 방법을 알아봅니다.
문제 상황
다음과 같은 두 개의 시리즈가 있다고 가정해 보겠습니다.
series_one = [1, 2, 3] series_two = [4, 5, 6]
이 두 시리즈를 연결했을 때 원하는 결과는 인덱스가 0부터 5까지 순차적으로 이어지는 형태입니다.
0 1 1 2 2 3 3 4 4 5 5 6
해결 방법
이 문제는 다음 두 단계로 해결할 수 있습니다.
연결할 두 개의 시리즈를 정의합니다.
pd.concat()함수에ignore_index=True옵션을 지정하여 두 시리즈를 연결합니다. 이 옵션은 기존 인덱스를 무시하고 0부터 시작하는 새로운 인덱스를 자동으로 생성해 줍니다.
pd.concat([series_one, series_two], ignore_index=True)
전체 예제 코드
아래는 전체 구현 예제입니다.
import pandas as pd series_one = pd.Series([1, 2, 3]) series_two = pd.Series([4, 5, 6]) print(pd.concat([series_one, series_two], ignore_index=True))
실행 결과
0 1 1 2 2 3 3 4 4 5 5 6
ignore_index=True를 사용하지 않으면 결과의 인덱스가 0, 1, 2, 0, 1, 2처럼 중복되어 나타납니다. 반면 이 옵션을 적용하면 위와 같이 인덱스가 0부터 5까지 연속적으로 재설정되어, 이후 데이터 처리나 분석 작업을 훨씬 수월하게 진행할 수 있습니다.