1단계: 준비사항 및 환경설정
다음 패키지를 Python 환경에 설치합니다.
pip install pandas openpyxl openai
- pandas: 엑셀 파일 데이터 처리
- openpyxl: 엑셀 파일 읽기 지원
- openai: ChatGPT API 호출을 위한 라이브러리
OpenAI의 API 키를 준비합니다.
2단계: 엑셀 파일 읽기 (pandas 활용)
아래 코드로 엑셀파일을 DataFrame 형태로 읽습니다.
import pandas as pd
# 엑셀 파일 로드 (파일명 및 경로는 본인의 파일명으로)
df = pd.read_excel("첨부파일.xlsx", sheet_name="Sheet1")
# 데이터 확인
print(df.head())
- "첨부파일.xlsx" 및 "Sheet1"은 본인의 실제 파일명과 시트명으로 변경해 주세요.
3단계: 엑셀 데이터를 텍스트 형태로 변환하기
ChatGPT API에 전달할 수 있도록, DataFrame 데이터를 텍스트 형태로 변환합니다.
아래는 간단한 텍스트 변환 예시입니다:
# DataFrame을 텍스트로 변환 (예시)
text_data = df.to_string(index=False)
# 텍스트 확인
print(text_data)
만약 데이터가 너무 길다면 아래 방법으로 필요한 부분만 선택적으로 보내거나 나누어 전송할 수 있습니다.
예시 (상위 100행만):
text_data_short = df.head(100).to_string(index=False)
4단계: ChatGPT API에 데이터 전송 및 분석 요청하기
아래는 ChatGPT API로 데이터 분석을 요청하는 예시입니다.
import openai
# API Key 설정
openai.api_key = "YOUR_API_KEY"
# 메시지 정의
messages = [
{"role": "system", "content": "당신은 엑셀 데이터를 분석하고 요약하는 전문가입니다."},
{"role": "user", "content": f"다음 엑셀 데이터를 분석하고 요약해주세요.\n\n{text_data}"}
]
# ChatGPT API 호출
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo", # 또는 "gpt-4-turbo" (성능에 따라 선택)
messages=messages,
temperature=0.2
)
# 분석 결과 출력
analysis_result = response.choices[0].message.content
print(analysis_result)
- 실제 API Key를 "YOUR_API_KEY" 자리에 입력해야 합니다.
- 분석이 잘 되지 않을 경우, 프롬프트를 보다 구체적으로 작성하면 좋습니다.
5단계: 분석 결과 저장하기 (선택적)
결과를 파일로 저장하는 예시입니다:
# 분석 결과를 파일로 저장
with open("analysis_result.txt", "w", encoding="utf-8") as f:
f.write(analysis_result)
추가 팁 및 주의사항
- 데이터 크기 제한
- GPT 모델에는 최대 토큰 제한이 있으므로, 매우 긴 데이터는 나누어 분석해야 합니다.
- 권장 데이터 크기는 한 번 호출에 약 2000~3000 단어 이하입니다.
- 비용 관리
- API 사용량에 따라 비용이 발생하므로, 텍스트를 필요 최소화하여 비용을 관리하세요.
- 프롬프트 세부화
- 원하는 분석 결과를 얻으려면, 프롬프트를 명확히 작성하는 것이 중요합니다.
- 예시 프롬프트:
"다음 데이터는 매출 데이터입니다. 월별 추세, 이상치, 인사이트를 요약해주세요."
이 방법으로 엑셀 데이터를 효율적이고 정확하게 분석할 수 있습니다.
반응형