[파이썬] pandas 알파벳 순서로 정렬
데이터 분석과 조작을 위해 자주 사용되는 패키지 중 하나인 Pandas는 데이터프레임을 효과적으로 다룰 수 있는 강력한 기능을 제공합니다. 이 중에서 데이터프레임의 특정 열을 알파벳 순서로 정렬하는 방법에 대해 알아보겠습니다.
데이터프레임 생성
먼저, 예시를 위해 다음과 같은 데이터프레임을 생성해보겠습니다.
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 32, 18, 41],
'Salary': [50000, 70000, 30000, 90000]}
df = pd.DataFrame(data)
위 코드를 실행하면 다음과 같은 데이터프레임이 생성됩니다.
Name | Age | Salary | |
---|---|---|---|
0 | Alice | 25 | 50000 |
1 | Bob | 32 | 70000 |
2 | Charlie | 18 | 30000 |
3 | David | 41 | 90000 |
알파벳 순으로 정렬
이제, ‘Name’ 열을 알파벳 순서로 정렬해보겠습니다.
sorted_df = df.sort_values('Name')
위 코드를 실행하면 ‘Name’ 열을 기준으로 데이터프레임이 알파벳 순서로 정렬됩니다.
Name | Age | Salary | |
---|---|---|---|
0 | Alice | 25 | 50000 |
1 | Bob | 32 | 70000 |
2 | Charlie | 18 | 30000 |
3 | David | 41 | 90000 |
내림차순 정렬
정렬 순서를 반대로 하고 싶다면 ascending
매개변수를 False
로 설정하면 됩니다.
sorted_df = df.sort_values('Name', ascending=False)
위 코드를 실행하면 ‘Name’ 열을 기준으로 데이터프레임이 내림차순으로 정렬됩니다.
Name | Age | Salary | |
---|---|---|---|
3 | David | 41 | 90000 |
2 | Charlie | 18 | 30000 |
1 | Bob | 32 | 70000 |
0 | Alice | 25 | 50000 |
주의사항
sort_values
메소드를 사용할 때 주의해야 할 점은, 기본적으로 해당 열의 값에 따라 정렬이 수행되며, 인덱스 값도 같이 정렬된다는 것입니다. 인덱스 값을 유지하면서 정렬하고 싶다면 reset_index
메소드를 사용하여 인덱스를 재설정할 수 있습니다.
sorted_df = df.sort_values('Name').reset_index(drop=True)
위 코드를 실행하면 인덱스 값도 유지된 채로 데이터프레임이 정렬됩니다.
Pandas를 사용하여 데이터프레임을 알파벳 순서로 정렬하는 방법에 대해 알아보았습니다. 데이터프레임은 다양한 조작 및 분석에 사용되므로, 이러한 정렬 기능을 응용하여 원하는 데이터 정렬을 수행할 수 있습니다.