Python/Pandas

pandas.set_index로 인덱스 설정하기

PySun 2025. 5. 21. 08:02
반응형

Pandas set_index: 데이터프레임 인덱스 설정하기

데이터 분석의 강력한 도구인 Pandas에서는 데이터프레임에 인덱스를 설정하여 보다 직관적으로 데이터를 다룰 수 있습니다. set_index 메소드는 데이터프레임의 특정 열을 인덱스로 지정하여 데이터를 보다 체계적으로 정리할 수 있게 해줍니다. 이 포스팅에서는 set_index 메소드의 사용법과 함께 몇 가지 예제를 탐구해 보겠습니다.

set_index 메소드 소개

set_index 메소드는 데이터프레임에서 지정한 열을 인덱스로 설정하는 데 사용됩니다. 이를 통해 데이터에 대한 빠른 접근성과 유연한 조작이 가능해집니다. 인덱스를 설정함으로써 데이터 분석에서 기초적인 단계인 데이터의 구조와 흐름을 더 잘 이해할 수 있게 됩니다.

함수 시그니처

DataFrame.set_index(keys, drop=True, append=False, inplace=False, verify_integrity=False)

매개변수:

  • keys: 인덱스로 설정할 열의 이름 혹은 열의 리스트입니다.
  • drop: 기본값은 True. 설정한 열을 삭제할지 여부를 결정합니다.
  • inplace: 기본값은 False. 데이터프레임을 직접 수정할지 여부를 결정합니다.
  • verify_integrity: 기본값은 False. 중복된 인덱스 값을 허용할지 여부를 결정합니다.

반환 값:

  • 설정된 인덱스가 반영된 새로운 데이터프레임이 반환됩니다. inplace=True인 경우 기존 데이터프레임이 수정됩니다.

사용 예제

기본 예제

다음은 set_index 메소드를 사용하여 데이터프레임의 특정 열을 인덱스로 설정하는 기본 예제입니다.

import pandas as pd

# 데이터프레임 생성
data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [24, 30, 22],
    'City': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)

# 'Name' 열을 인덱스로 설정
df.set_index('Name', inplace=True)

print(df)
# 출력:
#          Age         City
# Name                     
# Alice     24     New York
# Bob       30  Los Angeles
# Charlie   22      Chicago

여러 열의 인덱스 설정 예제

여러 열을 하나의 인덱스로 결합할 수 있습니다. 이렇게 하면 데이터의 조작이 훨씬 원활해집니다.

import pandas as pd

# 데이터프레임 생성
data = {
    'Country': ['USA', 'Canada', 'USA', 'Canada'],
    'City': ['New York', 'Toronto', 'Los Angeles', 'Vancouver'],
    'Population': [8175133, 2731571, 3792621, 631486]
}
df = pd.DataFrame(data)

# 'Country'와 'City' 열을 인덱스로 설정
df.set_index(['Country', 'City'], inplace=True)

print(df)
# 출력:
#                     Population
# Country City              
# USA     New York       8175133
#         Los Angeles    3792621
# Canada  Toronto        2731571
#         Vancouver      631486

결론

set_index 메소드는 Pandas 데이터프레임을 보다 유연하고 효율적으로 다룰 수 있게 해주는 강력한 도구입니다. 인덱스를 활용하여 데이터의 구조를 최적화하고, 더 나은 데이터 분석을 수행해 보세요!

  • 지금 바로 set_index 메소드를 이용해 데이터프레임의 인덱스를 설정함으로써 작업 효율을 높이세요!
  • 여러 열을 결합하여 강력한 인덱스를 만들어 복잡한 데이터 분석을 간단하게 만드세요!
반응형