CodeGym /행동 /Python SELF KO /필터링 및 처리된 데이터 Excel로 내보내기

필터링 및 처리된 데이터 Excel로 내보내기

Python SELF KO
레벨 28 , 레슨 4
사용 가능

너가 우주 탐험가이고 데이터는 너의 별 지도라고 상상해봐. 그것은 커다랗고, 혼란스럽고, 절대적으로 필요한 거야. 신중하게 필터링하고 분석한 후에는 이 데이터를 읽기 쉬운 형식으로 정리하고 저장해야 해. 이때 우리의 영웅, Excel로의 데이터 내보내기가 등장하지. 이 기능을 통해 동료들과 발견을 공유하거나 중요한 회의 보고서를 준비할 수 있어. 데이터가 새로운 원유가 된 세상에서, 단 몇 줄의 코드로 보고서를 만드는 기술은 수백만의 가치가 있을 수 있어.

1. 데이터 내보내기의 기본적인 측면

Excel로 데이터 내보내기는 단순히 한 형식에서 다른 형식으로 변환하는 게 아니야. 보고서를 사용자 친화적이고 이해하기 쉽게 조정할 수 있는 기회거든. 내 프로그래머 친구가 한 번 말했지: "파이썬은 마법을 부릴 수 있지만, 해리 포터도 지팡이가 필요하다". 우리 경우 지팡이는 to_excel 메서드이고, pandas 라이브러리에 포함되어 있어.

to_excel 기본

DataFrame에서 Excel 파일로 데이터를 내보내는 간단한 예제를 시작해 볼게. 예를 들어, 마라톤 참가자들의 데이터가 있는 DataFrame이 있다고 해보자:

Python

import pandas as pd

# DataFrame 생성
data = {
    '이름': ['안나', '보리스', '빅토르', '갈리나'],
    '나이': [29, 34, 22, 28],
    '도시': ['모스크바', '상트페테르부르크', '카잔', '노보시비르스크'],
    '완주 시간': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}

df = pd.DataFrame(data)

# DataFrame을 Excel에 내보내기
df.to_excel('marathon_participants.xlsx', index=False)

이 예제에서 단순한 DataFrame을 만들어 파일 marathon_participants.xlsx로 내보냈어. index=False 매개변수를 설정해서 필요하지 않다면 DataFrame의 인덱스를 Excel로 내보내지 않도록 했다는 점에 주목해.

형식과 스타일 추가하기

다음 단계로 넘어가자. 스타일을 추가해보자. 데이터를 멋지게 표현할 수 없는 사람은 없어! pandasopenpyxl을 사용하면 표를 쉽게 포맷하고 스타일을 추가할 수 있어.

Python

import pandas as pd
from openpyxl import Workbook

# DataFrame 생성
data = {
    '이름': ['안나', '보리스', '빅토르', '갈리나'],
    '나이': [29, 34, 22, 28],
    '도시': ['모스크바', '상트페테르부르크', '카잔', '노보시비르스크'],
    '완주 시간': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}

df = pd.DataFrame(data)

# 형식을 추가하여 Excel에 쓰기
with pd.ExcelWriter('styled_marathon.xlsx', engine='openpyxl') as writer:
    df.to_excel(writer, index=False, sheet_name='참가자')
    worksheet = writer.sheets['참가자']
    for col in worksheet.columns:
        max_length = 0
        column = col[0].column_letter # 열의 알파벳 표시 가져오기
        for cell in col:
            try:
                if len(str(cell.value)) > max_length:
                    max_length = len(cell.value)
            except:
                pass
        adjusted_width = (max_length + 2) * 1.2
        worksheet.column_dimensions[column].width = adjusted_width

이 예제에서는 데이터를 내보내기만 하는 것이 아니라, 내용에 맞게 열 너비를 조정하여 Excel에서 더 깔끔하게 보이도록 했어. openpyxl을 사용해서 시트에 접근하고 스타일을 적용했어.

다중 시트 작업

여러 시트를 가진 보고서를 만드는 것은 슈퍼맨의 임무처럼 들릴 수 있지만 실제로는 매우 간단해. 예를 들어, 연도별로 다른 대회의 데이터를 개별 시트에 저장하고 싶다고 상상해봐.

Python

import pandas as pd

# 연도별 데이터
data_2022 = {
    '이름': ['드미트리', '엘레나'],
    '나이': [30, 29],
    '도시': ['옴스크', '블라디보스톡'],
    '완주 시간': ['03:20:05', '03:35:40']
}

data_2023 = {
    '이름': ['이고르', '카테리나'],
    '나이': [31, 27],
    '도시': ['첼랴빈스크', '예카테린부르크'],
    '완주 시간': ['03:29:10', '03:40:20']
}

df_2022 = pd.DataFrame(data_2022)
df_2023 = pd.DataFrame(data_2023)

# 여러 시트에 데이터 쓰기
with pd.ExcelWriter('marathon_data.xlsx') as writer:
    df_2022.to_excel(writer, sheet_name='2022', index=False)
    df_2023.to_excel(writer, sheet_name='2023', index=False)

이 코드는 marathon_data.xlsx 파일을 만들고, 두 개의 시트에 연도별 데이터를 저장해. 연도, 프로젝트 또는 기타 범주별로 데이터를 분리할 때 매우 편리해.

2. 항상 개선의 여지가 있어

내보내기 자동화를 프로젝트의 복잡한 프로세스에 어떻게 통합할 수 있을지 생각해봐. 내보낸 후에 차트를 자동으로 생성하거나, 접근성을 위해 웹 인터페이스와 보고서를 통합하고 싶은 마음이 들 수도 있어.

어쨌든, Excel로 데이터 내보내기는 보기 좋고 정보가 많은 보고서를 만드는 첫 걸음일 뿐이야. 이 보고서 덕분에 직장이나 학업에서 데이터 분석의 스타가 될 수 있을 거야!

이제 데이터 내보내기를 자동화하는 도구를 갖추었으니, Excel에서 보고서를 더 읽기 쉽고 프레젠테이션에 적합하게 만드는 방법도 알게 되었어. 그러니 앞으로 나아가고, 너의 데이터가 항상 너를 위해 일하도록 만들어봐!

1
설문조사/퀴즈
쿼리 작성, 레벨 28, 레슨 4
사용 불가능
쿼리 작성
쿼리 작성
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION