Bootcamp

서베이 기반 데이터 수집 및 전처리, Matplotlib으로 데이터 시각화하기

sayous 2025. 5. 26. 17:44

그로스 마케팅에서는 고객 페르소나 구축, 제품/서비스 만족도 조사, 광고/캠페인 효과 분석, 구매 의사결정 과정 분석, NPS(Net Promoter Score) 분석 등을 위해 서베이를 활용한다. 서베이를 통한 체계적인 데이터 수집 및 분석은 고객 맞춤형 마케팅 전략 수립에 도움이 되며, 마케팅 예산 최적화 및 매출 증대에 활용될 수 있다.
 
(예시) 최근 3개월 내 브랜드의 제품을 구매했거나 마케팅 캠페인을 접한 고객을 대상으로 서베이 진행. (BLS - Brand Lift Survey와 비슷한 개념이라 보면 될듯)

 
 
설문조사 데이터는 특정 타겟 그룹의 의견을 반영하지만 표본 크기가 작거나 특정 그룹에 편향될 가능성이 있어, 이를 보완하기 위해 외부 데이터셋을 활용하면 더 풍부한 분석이 가능하다. 외부 데이터셋은 다양한 출처(구글 트렌드 검색량, SNS 언급량, 온라인 판매량 데이터 등)에서 가져올 수 있으며 설문 데이터와 결합하면 보다 정확한 마케팅 전략을 수립할 수 있다.
 
 

Matplotlib으로 데이터 시각화하기

Matplotlib은 파이썬에서 데이터를 시각화할 때 사용하는 라이브러리로, pyplot 모듈을 사용해 Line Plot, Bie Chart, Histogram, Scatter Plot, Box Plot, Subplot 등 다양한 그래프를 생성할 수 있다. 

  • Matplotlib 설치 명령어: pip install matplotlib

1. plt.plot() - 선 그래프(Line Plot) 만드는 함수

plt.plot(x, y, marker='o', linestyle='-', color='b', label='Data')

 

  • x, y: X축, Y축 데이터
  • marker: 점 모양 ('o', '*', 's', 'D', 'x' 등)
  • linestyle: 선 스타일 ('-' 실선, '--' 점선, ':' 점선, '-.' 점-대시)
  • color: 선 색상 ('r', 'g', 'b', '#FF5733' 등)
  • label: 범례 추가

 

2. plt.bar() - Bar Chart (막대그래프) 만드는 함수

plt.bar(categories, values, color=['red', 'blue', 'green'])

 

  • categories: X축 레이블
  • values: Y축 값
  • color: 각 막대의 색상 지정
  • width: 막대의 너비 조정 (기본값 0.8)

 

반응형

 

3. plt.hist() - 히스토그램 만드는 함수

plt.hist(data, bins=30, color='blue', edgecolor='black')

 

  • data: 히스토그램을 만들 데이터
  • bins: 막대의 개수 (구간 개수)
  • color: 막대 색상
  • edgecolor: 막대 테두리 색상

 

4. plt.scatter() - 산점도(Scatter Plot) 만들기

plt.scatter(x, y, color='r', marker='o')

 

  • x, y: X축, Y축 데이터
  • color: 점 색상
  • marker: 점 모양 ('o', '*', 's', 'D', 'x' 등)
  • s: 점 크기

5. plt.pie() - 원형 그래프(파이 차트) 만드는 함수

plt.pie(sizes, labels=labels, autopct='%1.1f%%', colors=['red', 'blue'])

 

  • sizes: 각 조각의 크기
  • labels: 각 조각의 레이블
  • autopct: 퍼센트 표시 형식 ('%1.1f%%' -> 소수점 1자리까지 표시)
  • colors: 색상 지정
  • startangle: 그래프 시작 각도 (기본 0)

6. plt.subplot() - 여러 개의 그래프를 한 화면에 표시하는 함수

plt.subplot(rows, cols, index)

  • rows: 행 개수
  • cols: 열 개수
  • index: 현재 그래프 위치

7. plt.boxplot() - 박스 플롯(상자 그림) 그리는 함수

plt.boxplot(data)
  • data: 입력 데이터
  • vert: 세로(True) 또는 가로(False) 방향 선택
  • patch_artist: 박스를 색칠할지 여부 (True)

기타 유용한 Matplotlib 함수

plt.title("제목")그래프 제목 추가
plt.xlabel("X축 이름")X축 이름 추가
plt.ylabel("Y축 이름")Y축 이름 추가
plt.grid(True)그래프에 격자 추가
plt.legend()범례 추가
plt.figure(figsize=(w, h))그래프 크기 조절
plt.xlim(min, max)X축 범위 설정
plt.ylim(min, max)Y축 범위 설정