Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Pandas DataFrame 열 순서 반전하기 – Python 완벽 가이드

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]을 사용해도 동일한 결과를 얻을 수 있으며, 특정 열만 선택적으로 재배치하고 싶다면 열 이름 리스트의 순서를 직접 지정하는 방법도 유용합니다.