파이썬/Pandas

파이썬 pandas : 인덱스 조작 방법

코샵 2023. 4. 1. 11:26
반응형
파이썬 pandas 모듈은 데이터프레임을 다루는 데 유용한 함수들을 제공합니다. 데이터프레임의 인덱스를 조작하는 방법에 대해서 자세히 알아보겠습니다.

인덱스 설정

데이터프레임의 인덱스를 설정하려면 set_index() 함수를 사용합니다. 예를 들어, 다음과 같은 데이터프레임이 있다고 가정해봅시다.

import pandas as pd

df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie'],
                   'age': [25, 32, 18],
                   'gender': ['F', 'M', 'M']})

이 데이터프레임의 인덱스를 name 열로 설정하려면 다음과 같이 코드를 작성합니다.

df = df.set_index('name')

위 코드를 실행하면 다음과 같은 데이터프레임이 생성됩니다.

        age gender
name
Alice   25      F
Bob     32      M
Charlie 18      M


인덱스 초기화

인덱스를 초기화하려면 reset_index() 함수를 사용합니다. 이 함수는 인덱스를 새로운 열로 추가하고, 기존의 인덱스를 제거합니다. 예를 들어, 위에서 설정한 인덱스를 초기화하려면 다음과 같이 코드를 작성합니다.

df = df.reset_index()

위 코드를 실행하면 다음과 같은 데이터프레임이 생성됩니다.

      name  age gender
0    Alice   25      F
1      Bob   32      M
2  Charlie   18      M


인덱스 변경

인덱스를 변경하려면 rename() 함수를 사용합니다. 이 함수는 열 이름을 변경할 때와 마찬가지로, columns 매개변수를 사용하여 변경할 인덱스 이름을 지정합니다. 예를 들어, 현재 인덱스가 name으로 되어 있는 데이터프레임에서 인덱스 이름을 ID로 변경하려면 다음과 같이 코드를 작성합니다.

df = df.rename(columns={'name': 'ID'})

위 코드를 실행하면 다음과 같은 데이터프레임이 생성됩니다.

         ID  age gender
0     Alice   25      F
1       Bob   32      M
2   Charlie   18      M


인덱스 정렬

인덱스를 정렬하려면 sort_index() 함수를 사용합니다. 이 함수는 ascending 매개변수를 사용하여 오름차순 또는 내림차순으로 정렬할 수 있습니다. 예를 들어, 인덱스를 오름차순으로 정렬하려면 다음과 같이 코드를 작성합니다.

df = df.sort_index()

위 코드를 실행하면 다음과 같은 데이터프레임이 생성됩니다.

         ID  age gender
0     Alice   25      F
1       Bob   32      M
2   Charlie   18      M


인덱스 선택

인덱스를 선택하려면 loc[] 함수를 사용합니다. 예를 들어, 인덱스가 Alice인 행을 선택하려면 다음과 같이 코드를 작성합니다.

row = df.loc['Alice']

위 코드를 실행하면 다음과 같은 시리즈가 생성됩니다.

ID       Alice
age         25
gender       F
Name: Alice, dtype: object


결론

이상으로 파이썬 pandas에서 데이터프레임의 인덱스를 조작하는 방법에 대해서 알아보았습니다. 인덱스를 설정하고 초기화하며, 변경하고 정렬하는 방법을 배웠습니다. 인덱스를 선택하는 방법도 알아보았습니다. 이러한 방법을 적극적으로 활용하여 데이터프레임을 보다 효율적으로 다룰 수 있습니다.