728x90
반응형

데이터프레임은 인덱스 혹은 컬럼값 기준으로 정렬이 가능함

 

Index 값 기준으로 정렬하기(sort_index)

1️⃣ axis = 0 : 행 인덱스 기준 정렬(Default 오름차순)

df = df.sort_index(axis = 0) # ascending = True가 default값(오름차순)

2️⃣ axis = 1 : 열(컬럼) 인덱스 기준 내림차순 정렬

df.sort_index(axis = 1, ascending = False) # 내림차순 정렬

 


Column 값 기준으로 정렬하기

1️⃣ col1 컬럼 기준 정렬(Default 오름차순)

df.sort_values('col1', ascending = True) # (컬럼명, 오름/내림차순)

2️⃣ col1 컬럼 기준 내림차순 정렬

df.sort_values('col1', ascending = False)

3️⃣ col2 컬럼 기준 오름차순 정렬 후 col2 컬럼 기준 내림차순 정렬

df.sort_values(['col2', 'col1'], ascending = [True, False])

 


예제 👇

import numpy as np
import pandas as pd

print("DataFrame: ")
df = pd.DataFrame({
    'col1' : [2, 1, 9, 8, 7, 4],
    'col2' : ['A', 'A', 'B', np.nan, 'D', 'C'],
    'col3': [0, 1, 9, 4, 2, 3],
})
print(df, "\n")
'''
DataFrame: 
   col1 col2  col3
0     2    A     0
1     1    A     1
2     9    B     9
3     8  NaN     4
4     7    D     2
5     4    C     3 
'''


# 정렬 코드 입력해보기    
# 1. col1을 기준으로 오름차순으로 정렬하기.
sorted_df1 = df.sort_values('col1', ascending = True)


# 2. col2를 기준으로 내림차순으로 정렬하기.
sorted_df2 = df.sort_values('col2', ascending = False)


# 3. col2를 기준으로 오름차순으로, col1를 기준으로 내림차순으로 정렬하기.
sorted_df3 = df.sort_values(['col2', 'col1'], ascending =[True, False])
반응형

'프로그래밍 > Python' 카테고리의 다른 글

Pandas groupby (1)  (0) 2021.09.30
Pandas 집계함수  (0) 2021.09.29
Pandas 데이터 선택 및 변경하기  (0) 2021.09.27
Pandas 데이터 프레임  (0) 2021.09.24
Pandas와 Series 데이터란?  (0) 2021.09.23
복사했습니다!