본문 바로가기

데이터

파이썬 실습 - 마케팅 채널 믹스 모델링

반응형

마케팅 채널 믹스 모델링

 

 

 


먼저 데이터 탐색을 위해 데이터를 불러온다.

그리고 행과 열을 찍어본다.

 

 

 

 

 

200개의 row와 5개의 column이 존재하는 걸 알 수 있다.

 

 

 

 

 

 

 

다음 info()를 찍어서 null값이 있는지, 컬럼의 키 값들이 무슨 형태인지 살펴본다.

 

 

 

 

모두 200개 row가 채워져 있어 null값은 없는 것을 확인할 수 있다.

그리고 모두 수치형이다.

 

 

 

 

 

다음, 필요한 컬럼만 가져오기 위해 다음과 같이 컬럼을 설정해준다. 그리고 shpae와 tail을 찍어보다.

 

 

 

 

 

 

 

분포가 어떻게 되는지도 찍어본다.

 

 

 

 

 

 

각 컬럼들의 상관관계에 대해 알아보기 위해 corr()를 찍어본다.

그리고 시각화를 위해 씨본의 heatmap을 찍어본다. annot옵션을 주어 수치가 표시되도록 한다.

 

 

 

 

sales와 TV가 가장 큰 상관관계를 이루는 걸 확인할 수 있다.

다음 radio와 sales가 비교적 큰 상관관계를 이룬다.

 

 

 

 

 

 

다음 pairplot을 찍어봄으로써 각 컬럼들의 관계가 선형을 이루는지 확인한다.

상관관계가 컸던 TV와 sales, radio와 sales 간 그래프가 비교적 선형 모양을 띠는 걸 알 수 있다.

 

 

 

 

 

다음 Labels와 features를 지정해준다.

여기서 변경해줄 값은 매체이고 그에 따른 예측 값은 매출(sales)이므로 

각각 x, y값으로 지정해주었다.

 

 

 

 

Labels를 찍어본다.

 

 

 

 

features도 찍어본다.

 

 

 

 

다음 미디어별 매체비용 분포를 살펴보기 위해 다음과 같이 시각화해준다.

 

 

 

 

 

 

stats model의 ols를 사용해 선형회귀분석을 한다.

그리고 summary를 찍어본다.

 

 

 

 

 

분석결과가 다음과 같이 나오는 걸 확인할 수 있다.

여기서 모든 내용을 볼 필요는 없다. 

R-squared, P-value, coef 부분만 살펴보도록 하자.

 

먼저 R-squared같은 경우, 높을 수록 좋다. 그러나 이 경우엔 너무 높게 나왔다. 이처럼 지나치게 높게 나온 경우 오히려 분석이 잘못된 것으로 봐야 한다(여기선 데이터를 이미 가공하였으므로 높게 나온 것). 보통은 0.4~0.5 정도만 나와도 높게 나온 것으로 간주한다.

 

P-value는 P>|t| 부분을 보면 된다. 이 경우 0.05보다 낮게 나와야 좋은 것인데 신문의 경우 높게 나왔으므로 신문이 매출에 미치는 영향이 미미하여 유의미하지 않다는 것을 뜻한다.

 

coef은 상관관계를 뜻한다. 역시 TV, radio는 coef이 양의 상관관계를 나타내는데 비해 신문은 음의 상관관계를 나타낸다.

 

회귀식은 다음과 같다.

sales = 2.9389 + 0.0458TV + 0.1885radio - 0.001*newspapaer

 

 

 

 

 

마찬가지로 sklearn의 선형회귀 분석도 해보겠다.

역시 위와 같은 결과가 나오는 걸 확인할 수 있다.

 

 

 

 

 

이번엔 변수를 조금 바꿔서 분석해보자.

아래와 같이 TV, 라디오, 신문을 모두 포함한 모델, 신문을 뺀 모델, TV만 있는 모델로 나누어

각각을 ols찍어보도록 하자.

 

 

 

 

 

아래와 같이 결과가 출력된다.

이와 같이 여러 개의 모델 중 선택을 할 때, AIC, BIC 수치를 확인한다.

이 수치들이 가장 낮은 모델이 좋은 모델이다. 물론 AIC, BIC만이 유일한 판단기준은 아니다.

RMSE, CFI 등 다른 기준들과 함께 고려돼야 한다.

 

이 결과는 앞서 살펴본 결과와 같다.

 

 

 

 

신문을 뺀 결과다.

 

 

 

 

TV만 포함한 결과다.

 

결과를 토대로 보면, 일단 신문광고 마케팅은 매출액과 관련이 없다고 할 수 있다.

매출액 예측에 있어서 신문광고 변수의 유무가 통계적으로 유의미한 차이를 보이지 않기 때문이다.

그리고 세 모델 중, AIC, BIC수치가 가장 낮은 TV+라디오 조합이 가장 적절한 모델이라고 판단할 수 있다.

 

 

 

 

그렇다면 각 미디어별 매체비에 따른 sales를 예측해보자.

먼저 아래와 같이 TV에는 300, radio에는 10, 신문에는 4를 광고비로 사용한다고 가정해보자.

 

 

예측값이 다음과 같이 나온다.

앞서 계산했던 회귀식과 값이 거의 똑같이 나오는 걸 확인할 수 있다.

 

 

 

 

 

그렇다면 TV에 각각 300, 10, 50을 투자했을 때 예측값을 살펴보자

 

 

 

 

300을 투자했을 때 가장 많이 매출이 발생하는 걸 확인할 수 있다.

 

 

 

 

그러나 이와 같이 데이터 변환 후 분석결과에 대해 샘플 수가 적거나 데이터 처리가 잘못되어서 

이 같은 결과가 나온 것일 수도 있다. 

일단 좀 더 자세히 들여다보기 위해 미디어별 광고비 분포를 distplot으로 찍어보자

 

 

 

 

 

TV와 라디오는 비교적 정규분포와 유사한 형태를 띠고 있는데 반해

신문의 경우 왼쪽으로 과도하게 치우친 걸 확인할 수 있다.

 

 

 

 

 

 

따라서 신문 데이터에 대해 정규화를 진행할 것이다.

먼저 아래와 같이 로그 변환을 해준다.

그리고 로그 변환을 해준 신문 데이터와 기존의 데이터를 찍어서 비교해본다.

 

 

 

 

 

 

다시 시각화를 해준다.

 

 

 

 

로그변환 데이터의 중심이 이동한 것을 확인할 수 있다.

완전정규분포는 아니지만 그래도 정규화 과정을 거쳤다는 걸 볼 수 있다.

 

 

 

 

 

로그 변환한 신문 데이터 변수 결과를 포함해 다시 ols분석을 해본다.

 

 

 

 

 

 

 

신문에 대한 상관계수는 음에서 양으로 변했으나 여전히 P-value는 0.05 수준에서 유의미하지 않다.

따라서 newspaper가 매출액에 미치는 영향은 거의 없다고 볼 수 있다.

 

 

 

 

데이터 분석 결과

 

TV와 라디오는 매출액에 미치는 영향이 있으나 신문광고는 그렇지 않으므로 신문광고를 중단해야 한다.

그러나 TV광고의 경우 비용 대비 효율이 조금 떨어지는 문제가 있다.

라디오 광고의 상관계수가 더 크다. 우리 제품은 라디오 광고를 할 수록 잘 팔리는 제품이다.

반응형