Pandas에서 인덱스의 정렬된 복사본을 반환하려면 index.sort_values() 메서드를 사용합니다. 이 메서드는 원본 인덱스를 변경하지 않고, 값이 정렬된 새로운 인덱스 객체를 생성해 반환한다는 점이 특징입니다.
1. 필수 라이브러리 임포트
먼저 필요한 라이브러리를 임포트합니다:
import pandas as pd
2. Pandas 인덱스 생성
정렬할 숫자형 요소들을 담은 Pandas 인덱스를 생성합니다:
index = pd.Index([50, 10, 70, 95, 110, 90, 30])
3. 인덱스 출력하기
생성된 Pandas 인덱스를 화면에 표시합니다:
print("Pandas Index...\n", index)
4. 인덱스 값 정렬하기
sort_values() 메서드를 호출하면 인덱스 값이 정렬됩니다. 별도의 옵션을 지정하지 않으면 기본적으로 오름차순(Ascending)으로 정렬됩니다:
print("\nSort the index values...\n", index.sort_values())
참고: 내림차순으로 정렬하고 싶다면index.sort_values(ascending=False)처럼ascending매개변수를 활용할 수 있습니다.
전체 예제 코드
다음은 지금까지 설명한 과정을 모두 포함한 전체 코드입니다:
import pandas as pd
# Pandas 인덱스 생성
index = pd.Index([50, 10, 70, 95, 110, 90, 30])
# Pandas 인덱스 출력
print("Pandas Index...\n", index)
# 인덱스의 요소 개수 반환
print("\nNumber of elements in the index...\n", index.size)
# 데이터의 dtype 객체 반환
print("\nThe dtype object...\n", index.dtype)
# 인덱스 값 정렬
# 기본적으로 오름차순으로 정렬됨
print("\nSort the index values...\n", index.sort_values())
실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다:
Pandas Index... Int64Index([50, 10, 70, 95, 110, 90, 30], dtype='int64') Number of elements in the index... 7 The dtype object... int64 Sort the index values... Int64Index([10, 30, 50, 70, 90, 95, 110], dtype='int64')
출력 결과에서 확인할 수 있듯이, 원본 인덱스는 그대로 유지되며 sort_values() 호출 시에만 값이 오름차순(10, 30, 50, 70, 90, 95, 110)으로 정렬된 새로운 인덱스가 반환됩니다.