말랑말랑제리스타일

[Pandas] 판다스 DataFrame 데이터 정렬 (order by) 본문

프로그래밍/파이썬

[Pandas] 판다스 DataFrame 데이터 정렬 (order by)

제리제리 2022. 1. 20. 08:28

판다스의 데이터 집계 함수는 여타 RDB 쿼리와 동일하게 group by를 사용합니다.

그렇다면 데이터 정렬은 어떨까요? 오라클을 비롯한 RDB의 SQL문에서는 order by절을 사용해 데이터를 정렬하지만 판다스의 DataFrame을 정렬하기 위해서는 sort_index와 sort_values라는 기능을 이용하게 됩니다.

두가지 정렬 방법의 사용법은 매우 간단하니 빠르게 설명하겠습니다.

1. sort_index

말그대로 index 순으로 정렬하는 기능입니다.

test_df.sort_index()

기본적으로 이렇게 사용할 수 있으며, index 순으로 정렬합니다. 만약 해당 DataFrame의 인덱스가 2개 이상이라면 앞의 인덱스부터 정렬됩니다.

2. sort_values

감이 바로 오시겠지만 DataFrame을 값을 기준으로 정렬합니다.

test_df.sort_values(by = 'Age', ascending = False)

sort_values로 판다스의 DataFrame을 정렬하는 경우 사용 가능한 매개변수가 많지만 그중 대표적인 2개정도만 언급하겠습니다. 먼저 by는 정렬할 기준 필드입니다. 예시처럼 하나만 넣을 경우 이 기준 정렬, 2개 이상의 데이터 정렬 기준을 두고싶다면 리스트 형태로 []로 묶어서 매개변수로 전달합니다. ascending의 경우 True가 Default 값이며, True이면 오름차순, False면 내림차순으로 DataFrame을 정렬합니다.

Comments