실제 파이썬 코딩을 통해 실무 보고서를 작성하는 예제를 완성해보겠습니다. 데이터 수집부터 전처리, 분석, 시각화, 그리고 보고서 작성까지의 전 과정을 다룹니다. 가상의 데이터를 사용하여 예시를 구체화하겠습니다.
### 1. 데이터 수집 및 전처리
먼저, 데이터 파일(`data.csv`)이 다음과 같은 형식이라고 가정합니다:
```
Category,Value
A,10
A,15
B,10
B,20
C,25
C,30
```
다음 코드를 통해 데이터를 읽고 전처리합니다.
```python
import pandas as pd
# CSV 파일에서 데이터 읽기
data = pd.read_csv('data.csv')
# 데이터 전처리: 결측값 제거
data_clean = data.dropna()
print(data_clean)
```
### 2. 데이터 분석 및 시각화
데이터를 분석하고 시각화하는 과정입니다.
```python
import matplotlib.pyplot as plt
import seaborn as sns
# 데이터 분석: 그룹별 평균 계산
grouped_data = data_clean.groupby('Category').mean().reset_index()
# 시각화: 막대 그래프
plt.figure(figsize=(10, 6))
sns.barplot(x='Category', y='Value', data=grouped_data)
plt.title('Category-wise Average Value')
plt.xlabel('Category')
plt.ylabel('Average Value')
plt.savefig('bar_plot.png') # 그래프를 파일로 저장
plt.show()
```
### 3. 보고서 작성
분석 결과를 포함한 Word 문서를 생성합니다.
```python
from docx import Document
from docx.shared import Inches
# 새로운 Word 문서 생성
doc = Document()
# 제목 추가
doc.add_heading('Data Analysis Report', 0)
# 분석 결과 설명 추가
doc.add_paragraph(
'This report contains the analysis of the data collected from the CSV file. '
'The following chart shows the average value for each category.'
)
# 그래프 추가
doc.add_picture('bar_plot.png', width=Inches(6))
# 그룹별 평균값 표 추가
doc.add_heading('Average Values by Category', level=1)
# 데이터프레임을 테이블로 추가
table = doc.add_table(rows=1, cols=2)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Category'
hdr_cells[1].text = 'Average Value'
for index, row in grouped_data.iterrows():
row_cells = table.add_row().cells
row_cells[0].text = row['Category']
row_cells[1].text = str(row['Value'])
# 보고서 저장
doc.save('report.docx')
```
이 코드 스니펫은 데이터 분석부터 시각화, 그리고 결과를 포함한 보고서 작성까지의 모든 과정을 자동화합니다. 각 단계에서 발생하는 파일(`data.csv`, `bar_plot.png`, `report.docx`)은 실제 실행 환경에서 필요합니다. 이 예제를 통해 데이터 분석 보고서를 자동으로 생성하는 방법을 익힐 수 있습니다.