본문 바로가기
Python/Pandas

pandas dataframe 데이터 변환 및 필터링 자동화

by PySun 2023. 9. 25.
반응형

판다스 라이브러리를 사용하여 데이터 변환 및 필터링을 자동화하는 다양한 케이스에 대한 예시 코드와 함께 설명하겠습니다.

Case 1: 데이터 변환 자동화

판다스를 사용하여 데이터 변환을 자동화하려면 apply() 함수를 활용할 수 있습니다. 예를 들어, 데이터프레임의 특정 열에 대해 함수를 적용하는 경우입니다.

import pandas as pd

# 샘플 데이터프레임 생성
data = {'급여': [50000, 60000, 75000, 90000],
        '세율': [0.1, 0.15, 0.2, 0.25]}

df = pd.DataFrame(data)

# '급여' 열에 세금을 적용하여 '실급여' 열 추가
df['실급여'] = df['급여'].apply(lambda x: x - x * df['세율'])

# 결과 확인
print(df)

Case 2: 데이터 필터링 자동화

특정 조건을 만족하는 데이터를 필터링하는 작업을 자동화하려면 조건을 설정하고 loc[] 함수를 사용할 수 있습니다.

import pandas as pd

# 샘플 데이터프레임 생성
data = {'이름': ['Alice', 'Bob', 'Charlie', 'David'],
        '나이': [25, 30, 35, 28]}

df = pd.DataFrame(data)

# 나이가 30 이상인 행만 필터링
filtered_df = df.loc[df['나이'] >= 30]

# 결과 확인
print(filtered_df)

Case 3: 여러 데이터 파일 자동 처리

여러 데이터 파일을 일괄적으로 처리하려면 반복문을 사용하여 파일을 불러오고 처리할 수 있습니다.

import pandas as pd
import os

# 데이터 파일이 있는 폴더 경로
folder_path = '데이터폴더/'

# 결과를 저장할 빈 데이터프레임 생성
result_df = pd.DataFrame()

# 폴더 내의 모든 엑셀 파일 불러오기 및 처리
for filename in os.listdir(folder_path):
    if filename.endswith('.xlsx'):
        file_path = os.path.join(folder_path, filename)
        # 엑셀 파일을 데이터프레임으로 불러오기
        df = pd.read_excel(file_path)
        # 데이터 처리 (예: 열 추가, 필터링 등)
        df['폴더명'] = folder_path
        # 결과 데이터프레임에 추가
        result_df = pd.concat([result_df, df], ignore_index=True)

# 결과 확인
print(result_df)

위의 예시 코드를 참고하여 데이터 변환 및 필터링을 자동화하는 방법을 익힐 수 있습니다. 판다스를 활용하면 다양한 데이터 처리 작업을 자동화할 수 있습니다.

반응형