>RE::VISION CRM

인공지능

챗GPT AI 시각화 데이터 분석 - 막대 챠트 프롬프트 명령 (프롬프트와 영상) Tutorial

YONG_X 2024. 3. 29. 15:34

챗GPT AI 시각화 데이터 분석 - 막대 챠트 프롬프트 명령

(프롬프트와 영상)

 

 


막대그래프는 데이터 분석에서 가장 간단하고 쉬운 시각화 방식이다. 하지만 전문적으로 데이터 분석, 시각화를 하는 사람들은 챠트의 부분 부분을 조절해서 중요한 정보를 담고 발견한다. 파이썬과 같은 프로그래밍 언어를 직접 사용하는 대신 인공지능 챗봇 챗GPT의 Advanced Data Analysis 고급데이터분석이 제공하는 시각화 기능을 사용해서도 이런 전문적인 시각화가 가능하다.


하지만, 챠트 시각화 방법에 대한 이해와 동시에 챗GPT에서 프롬프트 명령으로 (사용자 관점의 프롬프트 엔지니어링) 원하는 챠트의 모양을 표현하도록 지시하는 방법을 알아야 한다.

ChatGPT의 데이터분석 기능이 알아서 (사용자의 속마음까지 읽고) 최적의 데이터 시각화 결과를 제공하지는 않기 때문이다.

 

이 예제(영상)에서는 챠트 작성을 위한 데이터 집계와 집계한 데이터를 다양하게 배치하고 챠트의 모양을 변경해서 더 유용한 정보로 가공하는 방법을 실전적인 사례를 통해  step-by-step 살펴본다.


#챗gpt #데이터분석 #AI 
#인공지능 #챗GPT #데이터시각화 #막대그래프 

관련 자료 : https://revisioncrm.tistory.com/588 

provided by promptStrategies by 리비젼컨설팅. 2024

 

 

BEFORE

 

연습용 데이터셋(보헤미안 브리즈 고객데이터)에서 패션선호 유형별 연간 구매액을 시각화한 간단한 막대챠트는 다음과 같다.



 

AFTER

한스텝씩 다듬은 결과로 완성된 막대챠트 최종 버전은 다음과 같다.

 

 

 

막대 챠트 작성을 위한 ChatGPT 프롬프트 (최종 버전) ::

연령대의 중위수를 기준으로 젊은 집단과 나이가 많은 집단을 구분한 후 연령집단별 패션 선호별 연간 구매액 평균과 집단별 고객수를 집계하여 테이블을 막대 챠트로 시각화하라
X축에는 연령집단과 패션선호의 조합을 기준으로 하라
막대를 구매액 평균 순으로 정렬하라
연간 구매액 평균과 집단별 고객수 두 축 모두 검정색으로 표시하라
연간 구매액 평균과 집단별 고객수에 대한 범례를 표시하라
챠트 타이틀을 볼드로 표시하라
집단별 고객수 선을 두껍게하고 red로 표시하라
연간 구매액 평균 막대에 대해 고객수가 가장 많은 세 개 집단만 dodgerblue로, 나머지는 grey로 표시하라 
연간 구매액 평균 막대의 투명도를 0.6으로 하라
xticks를 45도 기울기로 하라
타이틀 텍스트의 폰트를 200% 정도로 하고 줄바꿈을 사용해 두 줄로 표시하라
(챠트를 정사각형 shape으로 작성하라)

 

 

 

만일 ChatGPT 고급데이터분석 기능 대신 Python 스크립트로 작성한다면 스크립트는 다음과 같다. 

 

 

import matplotlib.pyplot as plt
import numpy as np

# Calculate the median age to split the dataset into younger and older groups
median_age = data['Age'].median()

# Define a new column for age group based on median age
data['Age Group'] = data['Age'].apply(lambda x: 'Younger' if x <= median_age else 'Older')

# Group the data by Age Group and Fashion Preference, then calculate the average annual spending and count customers
grouped_data = data.groupby(['Age Group', 'Fashion Preference']).agg(
    Average_Annual_Spending=('Annual Spending on Fashion (USD)', 'mean'),
    Customer_Count=('Customer ID', 'count')
).reset_index()

# Sort the grouped data by Average_Annual_Spending in descending order for plotting
grouped_data_sorted = grouped_data.sort_values(by='Average_Annual_Spending', ascending=False)

# Find the top 3 groups with the highest Customer Count for coloring
top_3_groups = grouped_data_sorted.nlargest(3, 'Customer_Count')['Age Group'] + " - " + grouped_data_sorted.nlargest(3, 'Customer_Count')['Fashion Preference']

# Plotting
fig, ax1 = plt.subplots(figsize=(10, 10))

# Bars for Average Annual Spending
bars = ax1.bar(grouped_data_sorted['Age Group'] + " - " + grouped_data_sorted['Fashion Preference'], grouped_data_sorted['Average_Annual_Spending'], color=['dodgerblue' if x in top_3_groups.values else 'grey' for x in grouped_data_sorted['Age Group'] + " - " + grouped_data_sorted['Fashion Preference']], alpha=0.6, label='Average Annual Spending')

# Second axis for Customer Count
ax2 = ax1.twinx()
line = ax2.plot(grouped_data_sorted['Age Group'] + " - " + grouped_data_sorted['Fashion Preference'], grouped_data_sorted['Customer_Count'], color='red', label='Customer Count', linewidth=2, marker='o')

# General Plot Aesthetics
ax1.set_xlabel('Age Group - Fashion Preference')
ax1.set_ylabel('Average Annual Spending (USD)', color='black')
ax2.set_ylabel('Customer Count', color='black')
ax1.tick_params(axis='x', rotation=45)
ax1.set_title('Average Annual Spending and Customer Count by\nAge Group and Fashion Preference', fontsize='large', fontweight='bold')

# Adding legends
lines, labels = ax1.get_legend_handles_labels()
lines2, labels2 = ax2.get_legend_handles_labels()
ax2.legend(lines + lines2, labels + labels2, loc='upper right')

plt.show()

 

 

미세한 컨트롤에서 당연히 파이썬 프로그래밍을 사용하는 것이 효과적일 수는 있다. 하지만, 세부사항을 ChatGPT에게 시키는 방법도 상당히 효율적이고 유용하다.

또, 이미 파이썬 등의 프로그래밍 언어로 시각화하는 작업에 익숙한 경우에도 자신이 생각하지 못했던 다른 스타일의, 때로는 더 유용하고 좋은 결과가 만들어지는 챠트 작성 방식 또는 코드를 발견할 수 있는 기회도 제공한다.

 

 

영상을 통해 한 스텝 한 스텝 원하는 막대챠트의 모양을 ChatGPT 프롬프트로 표현해가는 과정을 살펴보자.

 

ChatGPT 고급데이터분석 시각화 - 막대챠트 그리기 (matplotlib) : 튜토리얼 영상

https://www.youtube.com/watch?v=_5vn68VsI6Y&t=2s

 

 

 

영상에서 사용하는 데이터셋 다운로드 및 설명 :: 보헤미안 브리즈 - 브랜드 설명 블로그 링크 

https://revisioncrm.tistory.com/588

 

styleMarket 데이터분석 : 보헤미안브리즈 고객세분화 분석 PYTHON

styleMarket 데이터분석 : 보헤미안브리즈 고객세분화 분석 PYTHON FSTAAP { # FSTAAP { # FSTAAP { # FSTAAP { # > 스타일마켓은 대한민국에 위치한 패션 제품의 생산, 수입 및 국내외 유통을 담당하는 기업입니

revisioncrm.tistory.com

 

 

 

 

관련 영상 ::

"챗 GPT - AI 데이터 분석 시각화 scatterplot 실전 예제" 영상에서도 역시 한스텝씩 다듬어서 풍부한 정보를 포함한 산점도를 작성하는 방법을 이해할 수 있을 것.

 

https://www.youtube.com/watch?v=1sXOEXpbS5g&t=26s

 

 

 

ChatGPT 고급데이터분석 기능(Code Interpreter)을 활용한 고객 데이터분석 Live Session 영상

 

https://www.youtube.com/watch?v=ODdsuf7_3dI&t=1s