6. 게임 데이터, R을 이용해서 직접 분석해보기
2. 많이 플레이한 유저 vs 적게 플레이한 유저의 잔
존율
7. 게임 데이터, R을 이용해서 직접 분석해보기
2. 많이 플레이한 유저 vs 적게 플레이한 유저의 잔
존율
일평균 플레이한 스테이지 수 =
플레이한 스테이지 수 총 합
플레이 일 수
• 일평균 플레이한 스테이지 수 > 전체 평균 → 많이 플레이한 유저
• 일평균 플레이한 스테이지 수 < 전체 평균 → 적게 플레이한 유저
9. 게임 데이터, R을 이용해서 직접 분석해보기
3. 규칙적으로 플레이 vs 불규칙적으로 플레이
10. 게임 데이터, R을 이용해서 직접 분석해보기
3. 규칙적으로 플레이 vs 불규칙적으로 플레이
플레이한 스테이지 수의 표준편차 = 𝑖=1
𝑛
(스테이지 수 − 평균 스테이지 수)
플레이 일 수(𝑛)
• 플레이한 스테이지 수의 표준편차 > 전체 평균 → 불규칙적으로 플레이한
유저
• 플레이한 스테이지 수의 표준편차 < 전체 평균 → 규칙적으로 플레이한 유
11. 1. 많이, 규칙적으로 플레이 avg_num_play ↑ &
std_num_play ↓
2. 많이, 불규칙적으로 플레이 avg_num_play ↑ &
std_num_play ↑
3. 적게, 규칙적으로 플레이 avg_num_play ↓ &
std_num_play ↓
4. 적게, 불규칙적으로 플레이 avg_num_play ↓ &
13. 텐투플레이의 28가지 유저 분류
게임 플레이 방법을 배우는 자세
• 수동적, 귀찮음, 게으름
• 새로운 게 싫은 복귀 유
저
• 이불 밖은 위험해!
• 정보가 부족한 비전문가
• 귀찮아서 방치
• 열심히
• 특정시간대 플레이
• 열심히 하고는 있는데
• 방치형도 손플
• 효율적으로
• 효율중시자
• 바쁘지만 효율적인 플레
이
Personal vs Social
• 개인적인 니즈 추구
• Underdog 키우기
• 최애캐 키우기
• 수집가
• 다른 사람들과의 교류 추구
• 헬퍼
• 다 같이 놀자
• 길드 유저
목표: 다른 플레이어 vs 게임 컨텐
츠
• 다른 플레이어를 이기는 것
이 목표
• 시작부터 PvP
• 데스노트
• 프로게이머
• 게임 컨텐츠를 이기는 것이
목표
• 속전속결형
• 스피드레이스
리소스를 어떻게 사용하는지
• 무조건 아끼기
• 무과금 유저의 기대치
• 캐쉬형 퀘스트 추구
• 완벽주의자의 악순환
• 실수하는 과정을 거침
• 실수를 만회하는 유저
• 인지부조화
• 미련을 갖고 있는 유저
• 전략적으로 투자
• 시스템 향상을 위한 투자
• 신규에서 전략적으로
14. 텐투플레이의 28가지 유저 분류
게임 플레이 방법을 배우는 자세
• 수동적, 귀찮음, 게으름
• 새로운 게 싫은 복귀 유
저
• 이불 밖은 위험해!
• 정보가 부족한 비전문가
• 귀찮아서 방치
• 열심히
• 특정시간대 플레이
• 열심히 하고는 있는데
• 방치형도 손플
• 효율적으로
• 효율중시자
• 바쁘지만 효율적인 플레
이
Personal vs Social
• 개인적인 니즈 추구
• Underdog 키우기
• 최애캐 키우기
• 수집가
• 다른 사람들과의 교류 추구
• 헬퍼
• 다 같이 놀자
• 길드 유저
목표: 다른 플레이어 vs 게임 컨텐
츠
• 다른 플레이어를 이기는 것
이 목표
• 시작부터 PvP
• 데스노트
• 프로게이머
• 게임 컨텐츠를 이기는 것이
목표
• 속전속결형
• 스피드레이스
리소스를 어떻게 사용하는지
• 무조건 아끼기
• 무과금 유저의 기대치
• 캐쉬형 퀘스트 추구
• 완벽주의자의 악순환
• 실수하는 과정을 거침
• 실수를 만회하는 유저
• 인지부조화
• 미련을 갖고 있는 유저
• 전략적으로 투자
• 시스템 향상을 위한 투자
• 신규에서 전략적으로
안녕하세요 텐투플레이 권혜연입니다.
지난 시간에는 게임 로그데이터 원본을 R을 이용해서 전처리를 한 다음, DAU와 잔존율을 그래프로 그려보는 연습을 했는데요,
이번시간에는 첫번째 시간에 소개해드렸던 심슨의 패러독스를 실제 데이터를 통해서 확인해보도록 하겠습니다.
먼저 심슨의 패러독스에 대해서 다시 설명 해드리도록 할게요.
심슨의 패러독스는 각 부분에 대한 트렌드가 존재한다고 해도, 이들 그룹 전체적으로 보았을 때는 이러한 트렌드가 나타나지 않거나 반전이 되는 현상을 가리킵니다. 즉, 전체적으로 보았을 때 보였던 현상이 그룹별로 쪼개면 전혀 다른 트렌드가 나타날 수 있습니다.
대표적인 예시가 2016년 미국 대선이었죠. 전체 득표 수는 힐러리 클린턴이 더 높았지만, 미국은 주별로 나뉘어져서 투표가 이루어지기 때문에 트럼프가 당선이 되었습니다.
그럼 실제로 이러한 현상이 게임에서도 발생하는지 데이터로 확인해보도록 하겠습니다.
지난번에는 csv에서 파일을 읽어들이는 것을 보여드렸는데요, 이번에는 DB를 읽어들여서 분석하는 것을 보여드리도록 하겠습니다.
(MySQL 보여주기, player_stages 테이블 설명)
그럼 이 데이터로 전체 유저의 retention 그래프를 그려보도록 할게요.
지난 시간에 보여드렸듯이, R로 전처리를 진행하는건 쉽지 않습니다. 그래서 이번에는 SQL로 먼저 내가 뽑고자 하는 데이터 형태를 만들어낸 다음 R로 불러오도록 할게요.
(R 시작, library(RMySQL)불러오는 것 부터)
그럼 이제 유저를 두 부류로 나눠보겠습니다.
하루에 스테이지를 많이 플레이한 유저와, 그렇지 않은 유저를 나눠볼건데요,
이를 판단하기 위해 플레이어의 일별 평균 스테이지 수 변수를 만들어보겠습니다.
일평균 플레이한 스테이지 수는 유저가 플레이한 총 스테이지 수를 플레이 일 수로 나눠서 구할 수 있는데요
이 일평균 플레한 스테이지 수가 다른 유저보다 많으면, 즉 전체 평균보다 많으면 많이 플레이한 유저,
전체 평균보다 적으면 적게 플레이한 유저로 분류할 수 있습니다.
(SQL로 넘어가기)
t-test는 두 집단 간 평균의 차이가 유의미한지 검증하는 통계 방법론입니다.
t-test 함수에 heavy user 와 light user의 생존일수를 넣으면 결과를 얻을 수 있습니다.
(R로 t-test)
아까는 얼마나 플레이를 많이 하는지로 살펴봤는데요, 플레이가 얼마나 규칙적인지도 확인할 수 있습니다.
표준편차를 변수로 설정하면 표준편차가 적은 유저는 플레이가 규칙적이고, 표준편차가 많은 유저는 플레이가 불규칙적인 유저라고 생각할 수 있겠죠
이렇게 많이 플레이하는지 적게 플레이하는지, 규칙적으로 플레이하는지 불규칙적으로 플레이하는지 만으로도 유저를 나눌 수가 있는데요,
이 두 변수로 유저를 4가지로 분류할 수 있겠죠. 많이, 규칙적으로 플레이...
그래서 이들을 나누어 잔존율을 구해봤더니 이렇게 나타납니다.
이처럼 유저의 플레이 성향을 나누면 유저들이 서로 다른 행태를 띄는 것을 알 수 있었는데요,
이에 착안해 텐투플레이는 28개의 persona로 유저를 나누었습니다.
그리고 이러한 페르소나는 지속적인 연구개발을 통해 계속 추가해나가고 있습니다.
이 중에 몇 개 흥미로웠던 사례를 들려드릴게요.
개인적인 니즈를 추구하는 타입 중, 특정 캐릭터, 가장 좋아하는 캐릭터에 충성하는 유저들과, 변심하는 유저를 비교해봤습니다.
변심한 유저의 생존일수는 골고루 분포되어있지만, 특정 최애캐를 가지고 있는 유저는 생존일수가 짧은 편. 초반에 집중되어있습니다.
즉, 변심한 유저는 플레이를 오래할 가능성이 높지만, 특정 캐릭터를 계속 좋아하는 유저는, 해당 캐릭터만 플레이하는 건 게임 진전에 도움이 안된다는 것을 깨닫고 이탈할 가능성이 높습니다.
재화, 아이템 등의 사용 행태 스타일 중, 공략대로 플레이한 유저, 공략대로 하지 않은 실수를 만회하고자 하는 유저, 그리고 공략과 상관없이 마이웨이로 플레이한 유저로 나눴습니다.
왼쪽을 보시면 공략대로 플레이한 유저와 실수를 만회하고자 하는 유저는 초반에 결제 패턴이 크게 다르지 않은 것을 알 수 있습니다.
그래서 결제 패턴만 보면 유저를 분류하기가 어려운데요,
후반부에 이벤트를 진행했을 때, 공략대로 플레이한 유저와 실수를 만회하고자 하는 유저가 다른 결제 행태를 나타나는 것을 알 수 있습니다.
이렇게 유저가 플레이할 때 재화나 아이템 사용 전략에 따라 분류하면 결제 패턴만으로는 구분하기 어려웠던 유저를 파악할 수 있습니다.
사실 이렇게 스테이지까지 세세한 데이터를 얻으려면 로그데이터를 저장하는 서버를 가지고 있거나, firebase에 커스텀 이벤트를 심어야됩니다.
그런데 firebase같은 경우, 커스텀 이벤트를 심고, 심은 데이터를 다시 내가 원하는 형태로 보려면 전처리 과정이 어마어마해서 쉬운 일은 아닙니다.
그래서 가장 좋은 건 (텐투플레이를 사용하는 것도 있지만) 직접 서버에 로그데이터를 남기는 방법인데요,
다음 시간에는 어떻게 하면 로그데이터를 서버에 잘 남길 수 있는지 그 노하우를 알려드리도록 하겠습니다.