링글 앱분석 _6
1. 모바일 어플 '링글' 고객행동패턴 분석 : 플로우차트
2. 잘못된 출발점 : 갈피를 잡지 못한 채 데이터 수집을 하다
3. 다시 가설설정부터 해보자
4. 구세주 논문
5. 가설 검증 : 데이터시각화
앱 스토어 또는 구글 플레이스토어에서 링글을 다운로드한 고객은 어떤 행동을 진행하게 될까?
신나게 플로우차트를 그리다 보니 유저저니맵을 그리던 날이 문득 생각났다. 시간이 참 빠르다.
다시 플로우차트로 돌아가보자면, 링글앱은 신규 유저가 들어갈 수 있는 버튼들이 기존유저의 화면과 거의 다르지 않기 때문에 시간이 상당히 오래 걸릴 것이라 예상했다.
그러다 모바일 앱 특성상 굉장히 많은 경우의 수들이 있을 것이기 때문에 경우의 수를 다 따져서 흐름도를 만드는 것은 조금 어렵다는 판단이 들어, 신규 유저가 유입되었을 때 어떤 흐름을 통해 결제까지 진행을 하는지만 중점적으로 그리게 되었다.
흐름을 1,2,3 단계로 나눠보았는데 이렇게 나눈 이유는 조금 있다 뒤에서 설명하도록 하겠다.
먼저 1단계는 유저가 회원가입 후 홈화면 진입 시까지이며, 2단계는 홈화면에서 여러 배너, 이벤트, 그룹핑된 카테고리를 탐색하는 단계이다. 그리고 마지막 3단계는 가격페이지에 진입하여 결제까지 마치는 단계로 나누어보았다.
위 이미지가 복잡해 보이지만 결국
1단계 2단계 3단계
회원가입 → 앱탐색 → 가격 확인 및 구매
3단계로 진행되는 셈이다.
내가 볼 때 링글은 전자상거래에 속한다.
배송, 물류, 재고관리 같은 오프라인 이슈는 없지만 고객 당 매출이 중요한 지표로 여겨진다. 유저가 수업권을 구매하는 것에서 매출이 나오기 때문에 다른 유형보다 전자상거래 유형이 가장 가깝다고 생각이 되었다.
다음으로 이어진 생각은
였다.
전자상거래라고 해도 또 거기서 세부적으로 유형이 나뉠 것이고, 같은 분야라고 해도 이탈률이라고 하는 게 브랜드마다 다를 수 있을 텐데 특정한 하나의 데이터를 보고 이탈률을 일반화시키는 게 가능할까?
라는 생각이 잠깐 들었지만, 솔직히 여기서 더 데이터를 찾는 것도 힘들다는 결론을 내리면서 일단 저질러보기로 했다.
그렇게 kaggle에서 다운로드한 csv데이터를 보니 자료가 사앙당히 방대했다.
자그마치 5630개가 되는 데이터...
일단 데이터의 컬럼명은 이러했다.
CustomerID(고객아이디)
Churn(이탈 플래그)
Tenure(고객 보유기간) => 고객 유지기간 정도로 해석할 수 있을 듯하다.
PreferredLoginDevice(고객이 선호하는 로그인 기기)
CityTier(도시 등급)
WarehouseToHome(창고에서 고객의 집까지의 거리)
PreferredPaymentMode(고객이 선호하는 결제 방법)
Gender(성별)
HourSpendOnApp(모바일 또는 웹사이트에서 보낸 시간)
NumberOfDeviceRegistered(사기거래로 등록된 건수)
PreferedOrderCat(지난 달 고객의 주문수가 많아 선호하는 것으로 판단되는 카테고리)
SatisfactionScore(서비스에 대한 고객의 만족점수)=> CSAT
MaritalStatus(결혼여부)
NumberOfAddress-> Total number of added added on particular customer 이라 하는데 특정 고객의 추가된 추가수 ? 무슨 말일까...? 숫자가 1부터 22까지 있는 걸 보면 주소는 아닌 것 같고 상품에서 세부추가옵션의 갯순가? 모르겠다. ㅠㅠ
Complain (지난 달 제기된 컴플레인 횟수)
OrderAmountHikeFromlastYear(작년보다 증가된 주문비율)
CouponUsed(지난 달 사용한 총 쿠폰 수)
OrderCount(지난 달 총 주문 건수)
DaySinceLastOrder(마지막 주문 이후 며칠이 지났는가)
CashbackAmount(지난 달 평균 캐시백)
추가로 변수들 수치화시키기.
이제 분석만 하면 된다. 그런데...
내가 알고 싶었던 건, 전자상거래 형식의 프로덕트에서 이탈률인데 일단 이탈 플래그가 0과 1로 나와 있으니 분명 0은 이탈이 없었던 것일테고 1은 이탈이 있었다는 뜻이렸다...
라는 결론에 다다랐다.
그럼 뭘로 알아보냐? 태블로는 써본 적이 없어서 아쉽지만 패스, 엑셀로도 할 수 있지만 너무 많은 영어에 어지러웠던 나는 심신에 안정을 찾고 싶었던 터라 익숙한 Rstudio로 갔다.
변수들의 상관성을 알아보려면 cor함수를 사용하면 된다.
library(xlsx)
Ecommerce = read.xlsx("C:/Users/82107/Desktop/Ecommerce .xlsx",2)
summary(Ecommerce[,])
cor(Ecommerce[,-1])
그렇게 나온 상관관계. 결측값 제거를 안해줬다.
다시!
cor(Ecommerce,use = "complete.obs")
상관계수는 -1~1사이의 값을 가지는데, 1과 가까울수록 높은 양적 상관관계를 가지고 있고 -1에 가까워질 수록 높은 음적 상관관계 즉 완벽한 반비례 관계를 가지고 있다고 이야기 한다. 또한 0에 가까울 수록 상관관계성이 없다고 한다.
정리하면, 계수가
±0.9이상: 아주 높은 상관관계
±0.7~±0.9 : 높은 상관관계
±0.4~±0.7 : 다소 높은 상관관계
±0.2~±0.4 : 낮은 상관관계
±0.2미만 : 관계 없음
가 되는 것이다.
즉 변수들 간에 어떠한 선형적 관계성을 가지고 있다를 이야기하려면 적어도 0.2정도는 되어야 한다는 것이다.
Churn과 다른 변수간에서 0.2란 숫자는 찾기 어려웠다....ㅋㅋㅋㅋㅋ
위 내용을 조금 더 보기 편하게 시각화한 것이 아래의 내용이다.
이렇게 보니 역시나 대부분이 0에 가깝다.
그나마 이탈플래그인 Churn과의 관계성이 보이는 것은 지난달 컴플레인 횟수랑 Tenure(고객 보유기간) 정도..?
참고로 Tenure(고객 보유기간)의 경우 반비례적 상관성을 가지고 있다.
근데 그것도 -0.34라 그닥... 굳이굳이 표현하자면 모호한, 미약한 상관성을 갖고 있다고 이야기할 수 있겠다.
결론적으로 시각화를 한다고 하더라도 유의미한 그래프가 그려질 가능성은 굉장히 낮았다.
분명 관계성이 0에 수렴하는 모양의 그래프가 나오겠지.
그런데 여기까지 오니까 드는 생각은
연결시킬 건덕지도 없는게,
해당 데이터는 두가지의 문제점을 가지고 있었다.
1. 이탈 플래그는 나오지만 어디 단계에서 이탈이 되는지는 정확하게 알 수 없다.
2. 게다가 해당 컬럼들과 이탈 플래그는 상관관계가 거의 없다.
시각화라도 하면 뭐라도 분석할 것들이 생길거라는 마음 하나로 온건데 시간만 버렸다. 좌절...
결국, 뒤엎고 다시 시작해보기로 했다.
애초에 기존에 있는 앱과 kaggle의 공공데이터를 연관시킨다는 것 자체가 무리한 발상 아닌가란 생각이 들었다.
링글 어플을 분석해보면서 있었던 일을 떠올리며 차근 차근 노트에 적어보았다.
차라리 기존에 인터뷰한 자료를 가지고 가설을 설정하고 r 스튜디오를 돌리는게 낫지 않을까?
그렇게 만들어본 최종 가설. 유저가 공감할 수 없는 용어가 많을수록 이탈률은 높아진다.
신규 유저들을 대상으로 인터뷰를 했을 때 역시 공통적으로 나왔던 이야기들이 "뭐가 뭔지 잘 모르겠다" 였다.
약 20명의 지인들에게 링글 어플을 보여주며 계속 실행하겠냐는 설문조사를 진행했을 때도 비슷한 답변들이 나왔다.
과연 뭐가 뭔지 잘 모르겠다 라는 것은 어떤 의미일까.
우리는 어떨 때 "뭐가 뭔지 잘 모르겠다"라는 표현을 쓸까?
나는 그 답을 설문조사 답변에서 얻을 수 있었다. 사실 지금까지 어플을 분석하면서 나만 헷갈리나 싶었던 것을 하나만 딱 꼬집자면, 바로 직관적이지 못한 애매한 용어들 이었다. 예를 들면 어플 하단의 하단바 gui 아이콘명을 들 수 있다.
홈/ 1:1 수업 / 튜터 / 콘텐츠 / 학습활동
여기서 홈은 머릿속에 이미지가 바로 떠오른다. 홈은 홈화면인거다. 기업에서 밀고 있는 콘텐츠들이 있을 가능성이 높다.
그럼 두번째, 1:1 수업은? 나는 처음에 튜터 예약하는 건가 싶었다. 그런데 그 옆에 보면 또 튜터 아이콘이 별도로 있다.
솔직히 링글 앱을 처음 받았을 때는 이런 부분 때문에 엄청 헷갈리고 답답했다.
나만 그렇게 느끼는 건지 궁금해서 이 내용도 설문조사에 넣었다. 많은 이들이 이야기했던 "뭐가 뭔지 잘 모르겠다"라고 느끼는 이 감이 혹시 내가 느꼈던 이런 것 때문은 아니었을까?
답은 예습, 복습, 예약이 모두 들어가있다.
하지만 정답을 맞춘 이는 겨우 23명 중 3명이었다.
단 13%만 용어가 품고 있는 모바일 기능을 맞췄다. 중요한 것은 나머지 87%는 해당 용어가 주는 의미가 정확히 와닿지 않았다는 사실이다.
이는 다시 말하면 뭐가 뭔지 모르겠다. 로 이야기될 수 있다.
아직 이것만으로 부족하게 느껴진다면 또 하나 더 있다.
위 내용은 모바일 어플을 다운로드 하고 회원가입한 뒤 노출되는 첫화면을 보여주고, 노출된 용어들 중 이해가는 모든 용어를 선택해달라는 물음이었다.
내가 이해하지 못하는 것은 대다수가 이해하지 못한 것이라는 말을 어디선가 들어본 적 있는데 그 말이 지금의 상황과 딱 맞다고 생각했다.
처음 링글을 들어갔을 때 '복잡하다'고 생각했던 이유 중 하나가 내가 모르는 생소한 용어들이 계속 보였기 때문이다.
이를 검증하려면 결국 정확한 이탈률이 확인되어야 한다. 플로우차트를 세단계로 나눈 이유는 유저가 어디서 이탈을 하는지 알기 위함이었다. 1단계에서 이탈을 많이 하는가, 2단계에서 많이 하는가 아니면 3단계에서 많이 하는가.
하지만 어느 단계에서 이탈을 하는지 알 길이 없으니 정확한 수치를 만들기도, 관계성 분석을 하기도 어렵다는 생각이 들었다.
고민하면서 계속 검색을 하던 찰나에 정말이지,
구세주인 것만 같은 논문을 하나 발견했다.
주목한 것은 "유목의 명확성" 이었다.
독립변수를 유목의 명확성으로, 종속변수를 탐색시간으로 하여 실험해보고
독립변수를 유목의 명확성으로, 종속변수를 오류횟수로 하여 실험한 다음 상관관계를 분석했다.
여기서 말하는 유목이란, 카테고리의 그룹핑이었다. 이 밖에도 독립 변수는 더 있었지만 내가 알고 싶은 것은 카테고리의 명확성 여부에 따른 이탈률이었기 때문에 생략하도록 하겠다.
해당 논문을 주목할 수 밖에 없었던 이유는 링글에서 탐색시간이 길어지는 것이 공감할 수 없는 카테고리 그룹핑 방식이라 생각했기 때문이다.
따라서 그룹핑이 제대로 되었는지에 따라 시간이 얼마나 많이 소요되는지를 분석한 내용을 참고한다면 그럴싸한 가설 검증이 진행 될 것 같았다.
논문 내용 중 몇가지 주목할만한 부분이 있었는데,
결과적으로는 모바일 인터페이스 상에서 목적을 가진 사용자들의 목적 수행시간은 카테고리의 명확성 유무와 강한 양적 상관관계성을 갖고있음을 찾아냈으며, 뿐만 아니라 이러한 카테고리의 명확성 유무는 앱에 인입된 유저가 목적을 수행하기 까지의 오류 횟수 역시 양적인 상관관계를 가지고 있었다.
위 그림에서 보면 유목이 명확한 것에서의 탐색시간 차이보다 불명확한 것에서의 탐색시간 차이가 월등하게 많이 벌어져 있는 것을 확인할 수 있다.
이번 표에서 이야기하는 '깊이'란 뎁스를 이야기하는 것으로 링글에서 보자면 1:1 수업이라는 아이콘(최상위 카테고리)을 눌렀을 때 상단에 표기되는 메뉴들 - 예약/ 예습&수업/복습/수업통계 -까지 해서 투뎁스가 된다. 즉 논문에서 나오는 용어로 말하자면 깊이가 2수준으로 이루어져 있는 것이다.
지금까지 유목의 명확성이 탐색시간이 길어지는 것에 유의미한 관계를 가지고 있다는 것 까지 확인 했다.
다시 세운 가설을 확인해보자.
카테고리 그룹핑 방식이 불명확하면( 유저가 공감할 수 없는 용어가 많을수록) 이탈률이 높아진다.
여기서 카테고리가 불명확하면 탐색시간이 길어진다는 가설은 증명되었다. 그렇다면 이런 원인으로 인해 탐색시간이 길어지면 이탈률도 높아진다는 것만 증명하면 되지 않을까?
23명에게 설문조사 했던 내용을 이용하여 데이터셋을 짜고 시각화를 진행해보았다. 질문지에는 리커트 척도법을 이용하여 명확하다고 생각하는 만큼 숫자로 표현해달라 요청했다.
또한 만약 링글을 실제로 깔았다면 여기서 더 어플을 둘러보겠냐는 질문도 추가로 물어봄으로써 이탈률을 확인하고자 했다.
그렇게 모인 로우데이터들은,
clear(카테고리의 명확성)
knownterms(용어 이해도)
bouncerate(이탈률)
위 세가지의 컬럼으로 가공하여 데이터셋을 만들 수 있었다.
그리고 이를 히트맵으로 시각화한 결과는 아래와 같았다.
clear (카테고리의 명확성)과 bouncerate(이탈률)은 강한 반비례관계를 보였는데 바꿔말하면 카테고리가 불명확할 수록(숫자가 낮아질수록) 이탈률은 높아진다.(숫자가 높아진다.)
또한 p값이 유의확률 0.05보다 작으므로 귀무가설인 카테고리의 명확성과 이탈률은 관계성이 없다는 것을 기각한다.
다만 knownterms(용어의 이해도)는 이탈률과 약한 반비례 관계를 보여 조금 아쉬웠다. 수집한 데이터가 더 많았다면 보다 명확한 결과를 얻을 수 있지 않았을까 라는 생각을 하게 되었다.
결론을 맺는다.
이탈률을 확인하고자 했던 질문에 23명 중 6명이 이탈하겠다고 이야기 했다. 그리고 이는 카테고리의 명확성/ 용어의 이해도와도 어느정도 상관관계가 있음을 확인했다. 모수가 적어서 아쉬웠지만 검증 및 시각화까지 무사히 하였다는 것에 위안을 삼아보기로 한다.
다음 분석에서는 크롤링과GA, 파이썬을 활용하여 분석을 해봐야겠다.
참고자료:
http://www.koreascience.or.kr/article/JAKO200727500210711.pdf