Pandas에서 기존 인덱스의 특정 위치에 새 인덱스 값을 삽입하려면 index.insert() 메서드를 사용하면 됩니다. 이 메서드는 원본 인덱스를 변경하지 않고, 새 값이 추가된 새로운 Index 객체를 반환한다는 점이 특징입니다.
insert() 메서드의 매개변수
- 첫 번째 매개변수(loc): 새 인덱스 값이 삽입될 위치(정수)입니다. 예를 들어 2를 지정하면 인덱스 2번 자리, 즉 세 번째 위치에 삽입됩니다.
- 두 번째 매개변수(item): 삽입할 새 인덱스 값입니다.
기본 사용법
먼저 필요한 라이브러리를 임포트합니다.
import pandas as pd
Pandas 인덱스를 생성합니다.
index = pd.Index(['Car','Bike','Airplane','Ship','Truck'])
생성된 인덱스를 출력해 확인해 보겠습니다.
print("Pandas Index...\n", index)이제 insert() 메서드를 사용해 인덱스 2번 위치에 'Suburban'이라는 새 값을 삽입합니다.
print("\n새 인덱스 값 삽입 후...\n", index.insert(2, 'Suburban'))전체 예제 코드
다음은 지금까지 설명한 내용을 모두 포함한 전체 코드입니다.
import pandas as pd
# Pandas 인덱스 생성
index = pd.Index(['Car','Bike','Airplane','Ship','Truck'])
# 인덱스 출력
print("Pandas Index...\n", index)
# 데이터의 dtype 확인
print("\ndtype 객체...\n", index.dtype)
# insert() 메서드로 특정 위치에 새 값 삽입
# 첫 번째 매개변수는 삽입될 위치, 두 번째 매개변수는 삽입할 값
print("\n새 인덱스 값 삽입 후...\n", index.insert(2, 'Suburban'))실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Pandas Index... Index(['Car', 'Bike', 'Airplane', 'Ship', 'Truck'], dtype='object') dtype 객체... object 새 인덱스 값 삽입 후... Index(['Car', 'Bike', 'Suburban', 'Airplane', 'Ship', 'Truck'], dtype='object')
정리
출력 결과를 보면 'Suburban'이 인덱스 2번 위치, 즉 세 번째 자리에 정확히 삽입된 것을 확인할 수 있습니다. 기존 인덱스는 그대로 유지되며, insert() 메서드는 항상 새로운 Index 객체를 반환하기 때문에 필요하다면 그 결과를 별도의 변수에 저장하여 활용할 수 있습니다.