[쇼핑 데이터 분석] chpt2

🌹Haeri Lee·2022년 3월 8일
0

데이터 세부분석

👆 여성고객을 분석해보자.

1) 연령대

data_f=data_new.loc[data['성별']=='f'] #여성 고객들만 추출
px.bar(x=data_f.iloc[:,5].value_counts().index, y=data_f.iloc[:,5].value_counts().values)

[결과]

  • 이 막대그래프를 바탕으로 여성고객들의 연령대 별 쇼핑사이트의 관심도를 조사해보자.

  • 여성고객 데이터 연령대 각각 /남+여 합친 데이터에서 각 연령대의 총합 계산

data_f_age=data_f.iloc[:,5].value_counts()

t=[]
for i in range(0,6):
    index_local=data_new.iloc[:,5].value_counts().index.tolist().index(data_f.index[i])
    t.append(data_f[i]/data_new.iloc[:,5].value_counts()[index_local])
    
px.bar(x=data_f.index, y=t)

[결과]

<해석>

  • 20대 초 여성에 비하여 20대 후반 여성들이 쇼핑사이트에 관심이 더 많은 것을 확인 할 수 있다.

  • 이를 바탕으로, 20대 후반 고객들에 대한 마케팅 전략을 구상할 때 20대 후반 여성 고객들을 타켓으로 하면 효과가 가장 좋을 것으로 예상

2) 여성 고객 지역 분석

data_f_local=data_f.iloc[:,3].value_counts()
px.bar(x=data_f.iloc[:,3].value_counts().index, y=data_f.iloc[:,3].value_counts().values)

[결과]

  • 여성고객의 지역별 빈도수 / 남+여 지역총합
t=[]
for i in range(0,len(data_f.iloc[:,3].value_counts())):
    index_local=data_new.iloc[:,3].value_counts().index.tolist().index(data_f_local.index[i])
    t.append(data_f_local[i]/data_new.iloc[:,3].value_counts()[index_local])
    
px.bar(x=data_f_local.index, y=t)

[결과]

<해석>

  • 빈도수에 대한 막대그래프만 보았을 때는, 수도권(서울+경기)에 있는 여성들이 쇼핑사이트에 대한 관심이 가장 많은 듯 보임

  • 그러나 이는 수도권에 거주하는 여성들이 많았을 뿐이고, 쇼핑사이트에 대한 관심도는 제주를 비슷하고는 거의 비슷함을 알 수 있다.

3) 여성 고객 구매물품 빈도 분석

px.bar(x=data_f.iloc[:,4].value_counts().index, y=data_f.iloc[:,4].value_counts().values)

[결과]

data_f_product=data_f.iloc[:,4].value_counts()

t=[]
for i in range(0,len(data_f.iloc[:,4].value_counts())):
    index_local=data_new.iloc[:,4].value_counts().index.tolist().index(data_f_product.index[i])
    t.append(data_f_product[i]/data_new.iloc[:,4].value_counts()[index_local])
    
px.bar(x=data_f_product.index, y=t)

[결과]

<해석>

  • 여성고객들은 화장품의 관심도가 가장 높고, 자동차용품에 대한 관심도가 적다.

  • 이를 통해, 쇼핑사이트를 이용하는 여성고객들은 남성고객에 비하여 차에 대한 관심도가 적거나 차를 소유하는 비율이 적은 것으로 추측

👆 남성 고객 분석

1) 연령대

data_m=data_new.loc[data['성별']=='m']
px.bar(x=data_m.iloc[:,5].value_counts().index, y=data_m.iloc[:,5].value_counts().values)

[결과]

  • 남성고객 데이터 연령대 각각 /남+여 합친 데이터에서 각 연령대의 총합 계산
data_m_age=data_m.iloc[:,5].value_counts()
t=[]
for i in range(0,6):
    index_local=data_new.iloc[:,5].value_counts().index.tolist().index(data_m_age.index[i])
    t.append(data_m_age[i]/data_new.iloc[:,5].value_counts()[index_local])
    
px.bar(x=data_m_age.index, y=t)

[결과]

<해석>
남성은 30-35대의 고객들이 가장 많음을 알 수 있다.

2) 남성 지역 분석

data_m_local=data_f.iloc[:,3].value_counts()
px.bar(x=data_m.iloc[:,3].value_counts().index, y=data_m.iloc[:,3].value_counts().values)

[결과]

t=[]
for i in range(0,len(data_m.iloc[:,3].value_counts())):
    index_local=data_new.iloc[:,3].value_counts().index.tolist().index(data_m_local.index[i])
    t.append(data_m_local[i]/data_new.iloc[:,3].value_counts()[index_local])
    
px.bar(x=data_m_local.index, y=t)

[결과]

<해석>

  • 쇼핑사이트에 대한 관심은 제주랑 전주가 가장 높음,
  • 제주도에서는 남성고객이 여성고객에 비하여 쇼핑사이트에 압도적으로 많은 관심을 보이고 있는듯 하다. 이유는?
    A) 제주도에 거주하는 고객들의 데이터가 너무 적다. 따라서, 우연하게 발생한 현상일 수 있다. 두번째로 제주도 남자들의 관심이 많은 제품을 판매하는 듯하다. (낚시용품 등)

3) 구매물품 분석

data_m_product=data_m.iloc[:,4].value_counts()
px.bar(x=data_m.iloc[:,4].value_counts().index, y=data_m.iloc[:,4].value_counts().values)

[결과]

t=[]
for i in range(0,len(data_m.iloc[:,4].value_counts())):
    index_local=data_new.iloc[:,4].value_counts().index.tolist().index(data_m_product.index[i])
    t.append(data_m_product[i]/data_new.iloc[:,4].value_counts()[index_local])
    
px.bar(x=data_m_product.index, y=t)

[결과] 역시나..

<해석>
남성들은 디지털기기, 자동차용품을 많이 구매하는 것으로 보임

4) 이런 방법으로도 관심 상품을 알 수 있어요

  • 전체 고객의 구매목록
data_new.iloc[:,4].value_counts()

마스크       50
노트북       49
화장품       38
핸드폰케이스    31
자동차용품     31
Name: 구매제품, dtype: int64
  • 남성 고객의 구매목록
data_m.iloc[:,4].value_counts()

노트북       29
마스크       26
자동차용품     22
핸드폰케이스    13
화장품       11
Name: 구매제품, dtype: int64
  • 남성 구매목록 빈도수를 각 구매목록의 총합으로 나눈 값에 대한 막대그래프를 그려보자
px.bar(x=['노트북','마스크','화장품','핸드폰케이스','자동차용품'], y=[29/49,26/50,11/38,13/31,22/31])

[결과]

👆 지역 분석

1) 서울

  • 전체 고객의 성비
data_new.iloc[:,0].value_counts()

m    101
f     98
Name: 성별, dtype: int64
  • 서울지역 고객들의 성비
data_new.loc[data_new['지역']=='서울'].iloc[:,0].value_counts()

f    47
m    43
Name: 성별, dtype: int64
  • 위 데이터를 바탕으로 연령대 비율 막대그래프를 그려보자
px.bar(x=['남자','여자'], y=[43/101,47/98])

[결과]

<해석> 서울에 거주하는 고객 중 여성고객의 관심비율이 더 높음

*서울에 대한 연령대 빈도수 막대그래프

px.bar(x=data_new.loc[data_new['지역']=='서울'].iloc[:,5].value_counts().index,
      y=data_new.loc[data_new['지역']=='서울'].iloc[:,5].value_counts().values)

[결과]

<해석>
근데 왜 10대가 없지? 아마도 아이를 키우는 고객들 & 아이들은 대부분 경기도에 거주하기 떄문

  • 구매품목 빈도수 그래프
px.bar(x=data_new.loc[data_new['지역']=='서울'].iloc[:,4].value_counts().index,
      y=data_new.loc[data_new['지역']=='서울'].iloc[:,4].value_counts().values)

[결과]

  • 구매품목 비율 막대 그래프
data_new.iloc[:,4].value_counts()
data_new.loc[data_new['지역']=='서울'].iloc[:,4].value_counts()
px.bar(x=['노트북','마스크','화장품','핸드폰케이스','자동차용품'], y=[24/49,20/50,17/38,16/31,23/31])

[결과]

2) 경기

  • 전체 고객의 성비
data_new.iloc[:,0].value_counts()
data_new.loc[data_new['지역']=='경기'].iloc[:,0].value_counts()
px.bar(x=['남자','여자'], y=[32/101,31/98])

[결과]

<해석> 경기지역에 거주하는 고객의 남녀비율은 거의 비슷

  1. 연령대 빈도수
data_new.iloc[:,5].value_counts()
data_new.loc[data_new['지역']=='경기'].iloc[:,5].value_counts()

px.bar(x=data_new.loc[data_new['지역']=='경기'].iloc[:,5].value_counts().index,
      y=data_new.loc[data_new['지역']=='경기'].iloc[:,5].value_counts().values)

[결과]

  • 연령대 비율 막대 그래프
px.bar(x=data_new.loc[data_new['지역']=='경기'].iloc[:,5].value_counts().index,
      y=[23/72,21/67,11/34,5/9,2/15,1/2])

[결과]

<해석>
경기지역에 거주하는 10대 고객들의 비율이 높은 것으로 보인다. 이를 바탕으로 경기지역에는 서울지역보다 가정을 이루는 사람들이 많은 것을 추측 할 수 있다.
(10대 - 40-45대 비율이 많음)

  • 구매품목 비율 막대그래프
data_new.iloc[:,4].value_counts()
data_new.loc[data_new['지역']=='경기'].iloc[:,4].value_counts()

px.bar(x=['노트북','마스크','화장품','핸드폰케이스','자동차용품'], y=[17/49,15/50,13/38,10/31,8/31])

[결과]

<해석> 서울에 거주하는 고객들의 구매패턴과 거의 비슷

3) 부산

  • 전체 고객의 성비
data_new.iloc[:,0].value_counts()
data_new.loc[data_new['지역']=='부산'].iloc[:,0].value_counts()
px.bar(x=['남자','여자'], y=[14/101,12/98])

[결과]

  • 고객들의 연령대 빈도수
data_new.iloc[:,5].value_counts()
data_new.loc[data_new['지역']=='부산'].iloc[:,5].value_counts()
px.bar(x=['20-25','25-30','30-35','10'],y=[9/67,6/72,6/34,2/9])

[결과]

<해석>

  • 다른 연령대에 비하여, 10대 고객들이 많이 속해있고 10-20대 고객들이 적은 것을 알 수 있다.

  • 25-30대 비율이 현저히 적어진 것은 수도권으로 상경한 인구들이 많아 서울 소속으로 이동

  • 구매품목 빈도수 막대그래프
data_new.iloc[:,4].value_counts()
data_new.loc[data_new['지역']=='부산'].iloc[:,4].value_counts()

px.bar(x=['노트북','마스크','화장품','핸드폰케이스','자동차용품'], y=[3/49,10/50,3/38,4/31,6/31])

[결과]

  • 평균 연봉
data_new.loc[data_new['지역']=='부산'].iloc[:,2].mean()

2876.923076923077

<해석>
부산에 거주하는 고객들의 평균연봉이 작은 것이 아니라, 10대들이 다른 지역에 비하여 많이 포함되어 있기 때문

4) 제주

  • 고객들의 남녀 빈도수
data_new.loc[data_new['지역']=='제주'].iloc[:,0].value_counts()

m    5
f    1
Name: 성별, dtype: int64

px.bar(x=['남자','여자'], y=[5/101,1/98])

[결과]

<해석>
이 쇼핑사이트에서는 제주도에 거주하는 남성고객들의 비율이 높은 것을 알 수 있다.

  • 고객 연령대 빈도수
data_new.loc[data_new['지역']=='제주'].iloc[:,5].value_counts()
px.bar(x=['20-25','25-30','35-40'],y=[2/67,3/72,1/34])

[결과]

  • 고객들의 구매품목 비율
data_new.iloc[:,4].value_counts()
data_new.loc[data_new['지역']=='제주'].iloc[:,4].value_counts()

px.bar(x=['노트북','마스크','화장품','핸드폰케이스','자동차용품'], y=[2/49,0/50, 1/38,1/31,2/31])

[결과]

<해석> 제주도에 거주하는 고객들은 차에 대한 관심이 많음을 알 수 있다.

<전체 해석>
👉 쇼핑사이트에 대한 관심도는 서울과 경기 비슷

👉 서울과 경기에서의 소비성향은 굉장히 흡사

👉 경기도에서 10대 고객들이 더 많이 분포해있음을 확인, 이는 경기도에 가정을 이루고 있는 고객들이 많기 때문

👉 부산에서는 20대 고객들이 굉장히 적은 것 관측, 이는 대부분 수도권으로 상경하기에 발생한 것으로 보여짐

👉 제주도에서는 자동차에 대한 관심이 높은 것 확인, 다른 지역의 경우 데이터 숫자가 작기에 유의미한 해석 불가

👉 제주도에서 남성 고객들이 많은 이유는 이 쇼핑사이트에서 매력적인 자동차용품을 판매하기 때문

👉 제주도 렌트가 사업 발달 > 자동차용품 판매 > 남성 고객들 많음 으로도 해석 가능

profile
안녕하세요 공부한 내용을 기록하기 위해서 시작했습니다.

0개의 댓글