Pandas에서 파이프라인을 생성하려면 pipe() 메서드를 사용합니다. 이 메서드를 활용하면 여러 데이터 처리 단계를 함수 형태로 연결하여 코드의 가독성과 재사용성을 크게 높일 수 있습니다.
1. Pandas 라이브러리 임포트
먼저 필요한 pandas 라이브러리를 별칭(alias)과 함께 임포트합니다.
import pandas as pd
2. DataFrame 생성
다음으로 예제에 사용할 DataFrame을 만듭니다.
dataFrame = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)3. 파이프라인 생성 및 사용자 정의 함수 호출
pipe() 메서드로 파이프라인을 생성하고, 열 이름을 대문자로 변환하는 사용자 정의 함수 upperFunc()를 호출합니다.
pipeline = dataFrame.pipe(upperFunc)
열 이름을 대문자로 변환하는 upperFunc() 함수는 다음과 같습니다.
def upperFunc(dataframe): # 대문자로 변환 dataframe.columns = dataframe.columns.str.upper() return dataframe
전체 예제 코드
지금까지의 내용을 모두 포함한 완전한 코드는 다음과 같습니다.
import pandas as pd
# 열 이름을 대문자로 변환하는 함수
def upperFunc(dataframe):
# 대문자로 변환
dataframe.columns = dataframe.columns.str.upper()
return dataframe
# DataFrame 생성
dataFrame = pd.DataFrame(
{
"Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'],
"Units": [100, 150, 110, 80, 110, 90]
}
)
print("DataFrame ...\n", dataFrame)
# pipe()를 사용해 파이프라인 생성
pipeline = dataFrame.pipe(upperFunc)
# 파이프라인 실행 결과 출력
print("\n대문자로 변환된 열 이름 출력...\n", pipeline)실행 결과
위 코드를 실행하면 다음과 같은 출력 결과를 확인할 수 있습니다.
DataFrame ...
Car Units
0 BMW 100
1 Lexus 150
2 Audi 110
3 Mustang 80
4 Bentley 110
5 Jaguar 90
대문자로 변환된 열 이름 출력...
CAR UNITS
0 BMW 100
1 Lexus 150
2 Audi 110
3 Mustang 80
4 Bentley 110
5 Jaguar 90pipe() 메서드의 장점
pipe() 메서드를 사용하면 다음과 같은 이점이 있습니다.
- 가독성 향상: 데이터 처리 과정을 순차적인 흐름으로 표현할 수 있어 코드를 이해하기 쉽습니다.
- 재사용성: 동일한 변환 로직을 여러 DataFrame에 적용할 수 있습니다.
- 체이닝 지원: 여러 개의 pipe()를 연결해 복잡한 전처리 파이프라인도 간결하게 구성할 수 있습니다.