reset_index() 함수는 Pandas 라이브러리에서 사용되는 함수로, 데이터프레임의 인덱스를 초기화하거나 재설정하는 데 사용됩니다. 이 함수는 인덱스를 리셋하고, 기존 인덱스를 데이터프레임의 열로 변환할 수 있는 다양한 옵션을 제공합니다. reset_index() 함수의 주요 기능과 사용법을 설명하겠습니다.
기본 사용법
기본적으로 reset_index() 함수는 데이터프레임의 인덱스를 기본 숫자 인덱스로 재설정합니다.
import pandas as pd
# 예제 데이터프레임 생성
data = {
'A': [1, 2, 3],
'B': [4, 5, 6]
}
df = pd.DataFrame(data, index=['a', 'b', 'c'])
print("Original DataFrame:")
print(df)
# 인덱스 리셋
df_reset = df.reset_index()
print("\nDataFrame after reset_index:")
df_reset
주요 파라미터
- name: 새로운 인덱스 열의 이름을 지정할 때 사용됩니다.
- inplace: True로 설정하면 원본 데이터프레임을 변경합니다.
- drop: True로 설정하면 기존 인덱스를 버리고, 새 인덱스를 기본 숫자 인덱스로 설정합니다.
- level: 다중 인덱스(MultiIndex)에서 특정 레벨만 리셋할 때 사용합니다.
- col_level: 다중 인덱스 열에서 어느 레벨에 인덱스 값을 넣을지 지정합니다.
- col_fill: 다중 인덱스 열에서 비어 있는 값을 채울 값입니다.
예제 코드
1. 기본 사용법
df_reset = df.reset_index()
일반적으로는 인덱스를 리셋한 데이터 프레임을 새로운 변수에 저장하여 사용한다. 이 경우 원본의 데이터는 바뀌지 않는다.
2. 원본 데이프레임을 변경
df.reset_index(inplace=True)
새로운 변수에 저장할 필요가 없는 경우, inplace=True로 원본의 인덱스를 바로 변경 할 수 있다.
3. 인덱스에서 열이 된 새로운 열 이름 변경
df.reset_index(names='NewIndexName')
4. 기존 인덱스를 버리고 기본 숫자 인덱스로 설정
df.reset_index(drop=True)
5. 다중 인덱스의 특정 레벨만 리셋
# 다중 인덱스 데이터프레임 생성
arrays = [['bar', 'bar', 'baz', 'baz'], ['one', 'two', 'one', 'two']]
index = pd.MultiIndex.from_arrays(arrays, names=['first', 'second'])
df_multi = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [5, 6, 7, 8]}, index=index)
# 특정 레벨만 리셋
df_multi_reset = df_multi.reset_index(level='first')
reset_index() 함수는 데이터 전처리 단계에서 매우 유용하게 사용되며, 데이터프레임의 구조를 유연하게 조작할 수 있도록 도와줍니다. 다양한 파라미터를 활용하여 필요에 맞게 인덱스를 리셋해보세요.
참고
'데이터분석 > Pandas' 카테고리의 다른 글
[Python] Pandas : Dataframe 함수 - concat() (0) | 2024.09.29 |
---|---|
[Python] Pandas : Dataframe 함수 - merge() (0) | 2024.08.16 |
[Python] Pandas : DataFrame 함수 - loc, iloc (0) | 2024.08.11 |
[Python] Pandas : Dataframe 함수 - groupby() 사용법 (0) | 2024.07.27 |
[Python] Pandas : Dataframe 함수 - replace() (0) | 2024.06.09 |
댓글