Python/NumPy | Pandas

[Python] Pandas - DataFrame 컬럼 순서 변경

비번변경 2023. 1. 12. 16:07

개요

DataFrame으로 데이터를 추가하다 출력할 때가 되면 데이터를 추가한 순서가 보기 편한 순서와 달라 데이터가 눈에 잘 안 들어오는 경우가 있다.

 

아래의 데이터를 예시로 들어 DataFrame의 컬럼 순서를 변경하는 방법을 정리해둔다.

import seaborn as sns

titanic = sns.load_dataset("titanic")
titanic

 

 

컬럼 나열

원하는 순서로 컬럼을 다시 나열하여 인덱싱 한다. df.columns 속성을 이용하면 필요한 컬럼을 빠트리지 않을 수 있다.

titanic.columns

# 실행 결과
Index(['survived', 'pclass', 'sex', 'age', 'sibsp', 'parch', 'fare',
       'embarked', 'class', 'who', 'adult_male', 'deck', 'embark_town',
       'alive', 'alone'],
      dtype='object')

컬럼 목록을 리스트로 인덱싱한다.

df = titanic[['pclass', 'sex', 'age','sibsp', 'parch', 'fare','embarked', 'class', 'who', 'adult_male', 'deck', 'embark_town','alive', 'alone', 'survived']]
df

 

 

reindex 함수

Series나 DataFrame을 새 인덱스에 맞추는 reindex 함수를 사용해도 된다.

df = titanic.reindex(columns=['sex', 'age','sibsp', 'parch', 'fare','embarked', 'class', 'who', 
                              'adult_male', 'deck', 'embark_town','alive', 'alone', 'survived', 'pclass'])
df

 

 

참고 문서

[Pandas] column 순서 재배치하는 2가지 방법

https://bio-info.tistory.com/16

https://clolee.tistory.com/20

https://stackoverflow.com/questions/13148429/how-to-change-the-order-of-dataframe-columns

https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.reindex.html