데이터프레임으로 분석을 하기 전 전처리 과정을 거치는데요, sort() 함수를 이용하여 정렬을 시키는 경우가 있습니다. 하지만 sort() 함수를 사용하고 나면, 인덱스 번호가 뒤죽박죽 섞이게 되는데요, 이를 재정렬하기 위해 인덱스를 지웠다 새로 만들기보다, reset_index() 함수를 이용하면 쉽게 재정렬 할 수 있답니다.
한 번 아래 코드를 보면서 살펴보도록 하겠습니다.
- reset_index(drop=True) : 인덱스 재정렬하기
먼저, 아래와 같이 정렬을 하기 전인 데이터프레임(df)이 있다고 가정해보겠습니다.
item count price rating
0 coffee 1 3000 4.5
1 juice 5 4000 3.0
2 ade 2 5000 4.0
3 milk 1 3000 2.5
4 tea 3 4000 3.0
5 water 2 3000 4.5
이 데이터프레임을 'rating' 칼럼을 기준으로 내림차순 정렬을 해보겠습니다.
df.sort_values(['rating'], ascending=[False], inplace=True)
item count price rating
0 coffee 1 3000 4.5
5 water 2 3000 4.5
2 ade 2 5000 4.0
1 juice 5 4000 3.0
4 tea 3 4000 3.0
3 milk 1 3000 2.5
정렬 후 위 데이터프레임을 보면 인덱스 번호가 0, 5, 2, 1, 4, 3으로 뒤죽박죽 섞인 것을 볼 수 있습니다.
따라서 인덱스를 재정렬 해주어야 하는데요, reset_index() 함수를 사용하면 된답니다.
reset_index() 함수는 말 그대로 인덱스를 없애주는 함수인데요, 이 안에 drop=True 라는 값을 인자로 넣어주면 재정렬을 해주는 것과 같게 됩니다.
이제 이러한 인덱스 번호가 재정렬되도록 reset_index(drop=True) 함수를 사용해보도록 하겠습니다.
df.reset_index(drop=True)
item count price rating
0 coffee 1 3000 4.5
1 water 2 3000 4.5
2 ade 2 5000 4.0
3 juice 5 4000 3.0
4 tea 3 4000 3.0
5 milk 1 3000 2.5
데이터프레임 출력 결과, 인덱스가 재정렬 되었음을 볼 수 있습니다.
한편, 기존의 인덱스 번호를 따로 한 칼럼으로 저장하고 싶다면 아래 코드처럼 reset_index() 함수 안에 drop=True 를 입력하지 않으면 된답니다.
df.reset_index()
index item count price rating
0 0 coffee 1 3000 4.5
1 5 water 2 3000 4.5
2 2 ade 2 5000 4.0
3 1 juice 5 4000 3.0
4 4 tea 3 4000 3.0
5 3 milk 1 3000 2.5
'BLOG > 데이터분석' 카테고리의 다른 글
[데이터분석] 데이터프레임 : 데이터프레임 사이에 다른 데이터프레임 삽입하기 - concat() (0) | 2021.03.15 |
---|---|
[데이터분석] 데이터프레임 : 다중 인덱스 설정하는 방법 - set_index() (0) | 2021.03.15 |
[데이터분석] 데이터프레임 : 한 칼럼(열)에서 특정 값과 일치하는 행 필터링 하기 (0) | 2021.03.15 |
[데이터분석] 데이터프레임 : 한 칼럼(열)에 특정한 값 있는지 조회하는 방법 (0) | 2021.03.15 |
[데이터분석] plotly : 데이터프레임 3개 칼럼으로 그래프 나타내기 (0) | 2021.03.15 |