Pandas DataFrame의 열(column) 순서를 반전하려면 dataframe.columns 속성에 파이썬 슬라이싱 문법 [::-1]을 적용하면 됩니다. 이 방법은 열 이름 목록을 역순으로 뒤집어, 열 순서가 반전된 새로운 DataFrame을 생성합니다.
열 순서 반전의 기본 원리
[::-1]은 파이썬의 슬라이싱 문법으로, 시퀀스를 뒤에서부터 앞으로 읽어오는 기능을 합니다. DataFrame의 columns 속성에 이 슬라이싱을 적용하면 열 이름이 역순으로 배열되며, 이를 인덱싱에 활용하면 원하는 결과를 얻을 수 있습니다.
dataFrame[dataFrame.columns[::-1]]
단계별 구현 방법
1단계: 필요한 라이브러리 임포트
import pandas as pd
2단계: 4개의 열을 가진 DataFrame 생성
dataFrame = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
"Cubic_Capacity": [2000, 1800, 1500, 2500, 2200, 3000],
"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000],
"Units_Sold": [100, 120, 150, 110, 200, 250]
})
3단계: 열 순서 반전하기
df = dataFrame[dataFrame.columns[::-1]]
전체 예제 코드
다음은 위 과정을 하나로 합친 전체 코드입니다.
import pandas as pd
# DataFrame 생성
dataFrame = pd.DataFrame({
"Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'],
"Cubic_Capacity": [2000, 1800, 1500, 2500, 2200, 3000],
"Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000],
"Units_Sold": [100, 120, 150, 110, 200, 250]
})
print("DataFrame...\n", dataFrame)
# DataFrame 열 순서 반전
df = dataFrame[dataFrame.columns[::-1]]
print("\n반전된 DataFrame....\n", df)
실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 확인할 수 있습니다.
DataFrame ...
Car Cubic_Capacity Reg_Price Units_Sold
0 BMW 2000 7000 100
1 Lexus 1800 1500 120
2 Tesla 1500 5000 150
3 Mustang 2500 8000 110
4 Mercedes 2200 9000 200
5 Jaguar 3000 6000 250
Reversed DataFrame....
Units_Sold Reg_Price Cubic_Capacity Car
0 100 7000 2000 BMW
1 120 1500 1800 Lexus
2 150 5000 1500 Tesla
3 110 8000 2500 Mustang
4 200 9000 2200 Mercedes
5 250 6000 3000 Jaguar
추가 팁
이 방식은 원본 DataFrame을 수정하지 않고 새로운 DataFrame을 반환하므로 안전하게 사용할 수 있습니다. 참고로 dataFrame.iloc[:, ::-1]을 사용해도 동일한 결과를 얻을 수 있으며, 특정 열만 선택적으로 재배치하고 싶다면 열 이름 리스트의 순서를 직접 지정하는 방법도 유용합니다.