반응형
Notice
Recent Posts
Recent Comments
Link
개발은 처음이라 개발새발
파이썬 열 순서 변경[python/pandas] 본문
반응형
안녕하세요, 이번에는 판다스에서 열의 순서를 변경하는 것에 대해 알아보도록하겠습니다. 이번 시간 예제는 seaborn에서 제공하는 타이타닉 데이터를 가지고 진행하겠습니다. 우선적으로 컬럼을 순서를 변경하는 데 있어 필요한 것은 컬럼의 리스트를 만드는 것입니다.그렇다면 컬럼 리스트를 만드는 것까지 코딩을 진행해보겠습니다.
import seaborn as sns
titanic = sns.load_dataset('titanic')
df = titanic.loc[0:4,'survived':'age']
print(df,'\n')
#컬럼 리스트 만들기
columns = list(df.columns)
print(columns,'\n')
survived pclass sex age
0 0 3 male 22.0
1 1 1 female 38.0
2 1 3 female 26.0
3 1 1 female 35.0
4 0 3 male 35.0
['survived', 'pclass', 'sex', 'age']
네 이렇게 컬럼 리스트까지 만들었습니다. 이제 컬럼 순서를 결정하는 함수를 알아봐야 하는데요. 컬럼들의 순서를 변겅할 때는 sorted()함수를 사용합니다. sorted()함수 사용 시 기본적으로 열 이름은 알파벳 순으로 정렬됩니다.
# 컬럼 알파벳 순으로 정렬하기
columns_sorted = sorted(columns)
df_sorted = df[columns_sorted]
print(df_sorted,'\n')
age pclass sex survived
0 22.0 3 male 0
1 38.0 1 female 1
2 26.0 3 female 1
3 35.0 1 female 1
4 35.0 3 male 0
그렇다면 알파벳의 역순으로 하고 싶으면 어떻게 할까요? 그럴 땐 sorted() 함수 안에 reverse= 매소드를 사용해 역순으로 만들 수 있습니다.
# 컬럼 알파벳 역순으로 정렬하기
columns_reverse = sorted(columns, reverse=True)
df_reverse = df[columns_reverse]
print(df_reverse,'\n')
survived sex pclass age
0 0 male 3 22.0
1 1 female 1 38.0
2 1 female 3 26.0
3 1 female 1 35.0
4 0 male 3 35.0
그렇다면 본인이 원하는대로도 커스텀이 가능한지도 확인해볼까요? 이때는 변수에 본인이 원하는 컬럼을 직접 리스트화에 변경할 수 있습니다.
# 컬럼 커스텀
columns_custom = ['pclass','sex','age', 'survived']
df_custom = df[columns_custom]
print(df_custom)
pclass sex age survived
0 3 male 22.0 0
1 1 female 38.0 1
2 3 female 26.0 1
3 1 female 35.0 1
4 3 male 35.0 0
컬럼 커스텀 코드를 좀 더 짧게 하자면 굳이 변수를 만들지 않고 df[['pclass','sex','age', 'survived']]로 df[]안에 직접 넣는 것이 좀 더 간편한 코드가 될 수 있습니다. 다음에는 필터링에 대해서 알아보도록 하겠습니다.
반응형
'파이썬' 카테고리의 다른 글
[Anaconda] 가상환경 리스트 확인하기 (0) | 2024.03.14 |
---|---|
[Anaconda] Anaconda 가상환경 생성하기 (0) | 2024.03.14 |
.format() 함수와 operator 모듈 (0) | 2024.01.17 |
[책 소개] 혼.공.파, 혼자 공부하는 파이썬 (1) | 2022.07.07 |
[Python] for문을 거꾸로 해보자! (1) | 2022.07.06 |