본문 바로가기
Tableau

[vizable] 2주차 과제: 차트 제작과 대시보드 배치

by hyemjjang 2021. 6. 1.

[데이터 소개]

https://www.kaggle.com/vodclickstream/netflix-audience-behaviour-uk-movies

캐글의 " Netflix audience behaviour - UK movies " 데이터를 가지고 왔다

해당 데이터는 UK 넷플릭스 유저들의 브라우징 액티비티를 추적한 것으로, 2017.1-2019.6까지의 데이터이며, 각 영화에 머무른 시간(duration)을 알아보고자 하는 것이 핵심이다

 

[데이터 전처리]

- 엑셀

- 하나의 영화가 가진 장르가 여러개라서 이걸 그대로 썼을 때 과연 태블로 내에서도 개별 요소들이 구분되는지, 아니면 따로 구분을 해 주어야 하는지 모르겠다. 그래서 일단 시트를 구분해서 둘 다 해보기로 함

심지어 genres 라는 변수명을 각각 다르게 설정해줘야 하는지(넘버링을 통해) 아니면 또 같게 해줘도 되는 건지 헷갈린다. 같게 해주면 같은 변수라고 인식 되나? 

일단 나는 지금 블로그 게시물을 쓰면서 해보는 중이기 때문에 한번 해보고 밑에 덧붙여 쓰겠다

 

- 태블로

 

1. 데이터 해석기 (레코드 값이 많아서 굉장히 오래걸림.. 심지어 뭐 바뀐지도 모르겠음)

2. row num 변수 필요 없어서 숨겨줌

3. 형식 정돈

 

[데이터 자체로만 한 EDA]

 

1. 가장 중요한 변수는 duration이니까, 이를 기준으로 정렬해야 되겠다.

1-1. duration이 높은 월, 요일, 시간대

1-2. duration이 높은 장르

2. user id는 로그값이라 임의로 붙는 건 줄 알았는데, 개별 유저를 대표하는 값이 맞는 듯. 중복된 값이 있다.

다만 해당 데이터가 다수의 경로로 유입된 유저를 모두 기록하는 것이기 때문에, 동일 유저임에도 경로별로 id 값을 다르게 부여할 가능성도 있을 듯 하다. 하지만 이는 내가 거를 수 없음. 넷플릭스의 특성상 로그인된 유저만 영화를 볼 수 있지만 이건 말 그대로 클릭 유저를 트랙킹한 거라, 비회원의 로그값도 기록되지 않았을까? 

어쨌든 유저별로 duration을 합산하여, 유저를 계급화, 유형화할 수 있을 듯

3. 2와 비슷하게, 영화의 title과 id값이 존재하기 때문에, duration 합계가 높은 영화를 추산할 수 있다. 

전체 영화 중 상위 영화 분석 가능

4. 전체 영화 중 넷플릭스가 보유한 영화의 장르 편향성을 분석할 수 있다. 넷플릭스와 계약했고 + 유저들이 클릭한 기록이 있는(0인 경우 아예 논의할 가치가 없다고 가정했을 때) 영화 장르는 주로 무엇인가 (이는 duration이 필요 없다)

5. 월, 요일, 시간대 별로 인기있는 개별 영화(title), 장르가 다를 것이다. 

5-1. title

5-2. genres

6. duration이 높은 '특정 개봉 연도' 

개봉 연도에 대한 배경 지식이 있다면, 그 때의 영화 트렌드를 파악할 수 있고, 현재 언제 개봉한 영화를 주로 보는지 확인하면서 사용자들이 주로 선호하는 '특정 개봉 연도'를 도출할 수 있다

유행은 돌아온다는 말이 있듯이, 17/18/19년도에 각각 선호하는 특정 개봉 연도가 다를 것이라고 생각된다.  

 

사실 이 모든 가정을 다 실험해 볼 수도 있겠으나 현재 시간의 부족으로 (ㅠㅠ) 일단 중요하다고 생각되는

duration이 높은 (시간 변수), (장르), (개별 영화), (유저), (특정 개봉 연도)를 해보고자 한다. 

 

+

더 깊은 분석을 위해서는 외부 데이터 연결이 필요하다

- 넷플릭스 UK에서 보유한 영화의 세부 정보(감독, 출연 배우, 평점 등)을 연결지어 확인하면 왜 사람들이 해당 영화를 클릭했는지 근거를 정확하게 분석하는 것이 가능하다

(movie id가 다른 데이터셋에도 동일하게 적용되는지 고려 필요, 동일하다면 훨씬 쉽게 연결 가능할 것)

- 유저 정보 데이터. 유저의 나이대, 성별, 가입시기, 직업 등의 세부 정보가 있다면 타겟 고객 유형을 설정하는 데에 큰 도움이 될 것 같다. 현재의 데이터로 유저를 굳이 분석하자면 "평균체류시간" "누적체류시간" "선호 장르" 이 정도만 뽑을 수 있기 때문에 한계가 있다. 

 

[차트]

1. duration이 높은 개별 영화 / 유저

열에 title/ user id를, 행에 duration을 넣으면 간단하게 히스토그램을 만들 수 있다

다만 생각했던 것보다 레코드 수가 너~무 많아서 특정 값을 필터링하는 방식으로 만드려다가 그냥 상위 10개의 레코드만 뽑기로 했다 

 

=> 해당 값들을 히스토그램으로 넣어 극단값의 격차를 확인하고 + box plot을 통해 해당 값이 전체적으로 어떤 위치에 있는지 확인 + 각 값들의 duration 평균값/ 전체 duration 평균값을 다시 히스토그램이나 단순 도표로 정리하면 잘 팔리는 영화와 충성도 높은 고객이 전체 평균값보다 도대체 얼마나 더 쓰는지 확인할 수 있다. 이는 해당 고객, 영화에 대한 마케팅 비용을 책정할 때 사용될 수 있을 것이다. 

 

원래 하위 값도 확인하려 했는데 다시 생각해보니 그런 고객과 영화는 너무나 많아서 굳이 10개만 뽑을 수 없고 굳이 확인하자면 걍 count 해서 유령고객, 유령콘텐츠 비중 확인 정도만 해도 충분할 듯 하다. 

 

+ 하다 보니까 datetime(년)을 색상으로 넣는 게 좋겠다는 생각이 들었다

그러면 유저의 경우 해당 유저가 지속적으로 넷플릭스를 사용한건지, 특정 년도에 집중해서 사용한 건지도 확인할 수 있고(현재도 플랫폼을 이용하고는 있는지), 영화의 경우에는 그 영화가 언제 유행했는지 알 수 있다

+ date타임으로 필터링 넣고 상위 값 다시 추출해서 각 연도별로 달라지는 상위 영화를 파악하는 것도 좋을 듯

아예 대시보드 내에 겹쳐서 강조하는 것도 가능할 것 같다

다만 유저를 이렇게 뽑아내는건 굳이? 의미 없을 듯

 

(1) duration이 높은 개별 영화

 

순위 영화명 duration (단위: 초)
1 black mirror: Bandersnatch 295,512,934
2 Hot Fuzz 115,028,848
3 Annihilation 112,093,639
4 Avengers: Age of Ultron 110,605,705
5 Deadpool 106,944,711
6 Bird Box 102,107,377
7 Bright 95,716,587
8 The Hitman's Bodyguard 95,466,785
9 FYRE: THe Greatest Party That Never Happend 94,241,935
10 13 Reasons Why: Beyond the Reasons 93,370,663

전체 영화의 평균 duration : 약 2,839,274

 

(2) duration이 높은 유저

 

1위 유저 duration :  21,187,684

2위 유저 duration : 35,168,904

 

전체 유저 평균 duration : 약 138,881

=> 0 내지는 음수 값이 있어 그런듯


여기까지 하고 답답한 점

 

1. 배경 시트 설정 어떻게 하더라? 뒤의 선을 지우고 싶은데 못찾음.. 

2. 지금 duration 합계가 연도별로 따로 나오고 있는데 (연도-색상 설정을 한 뒤부터) 연도별 구분을 한 상태에서 라벨링만 유저별/영화별로 duration 누적 값을 할 순 없는가?? 진짜 이부분이 너무 거슬림 ㅠㅠ

3. 라벨링에서 숫자 단위 다르게 설정할 수 있다고 했는데 그 부분을 못찾음..


(3) box plot

- 영화

아 이 둘은 블로그 내에 어떻게 배치해야 하는지 모르겠다

딱 봐도 값이 아래에 포진해있고, 극단값과 차이가 크다

유저, 영화 모두 1, 2위 값의 차이가 굉장히 큼!

 

2. duration 높은 장르 상위 10개

 

 

- 가장 모르겠는 것

분명 차트 자체의 크기를 조정하는 방법을 영상에서 본 것 같은데 그게 뭔지 모르겠음!!

파이차트가 인간적으로 넘 작다..^^ 파이차트는 어케 크기 조정 하는거지...

그리고 우려했던 대로 장르 구분이 안됨. 이건 정확한 값이라 할 수 없음

장르 쪼갠 데이터로 다시 작업할 예정이며, 추가적으로 아까 계산한 상위 유저가 많이 본 장르도 파이차트로 만들 수 있을 것 같음!

 

[대시보드]

 

 

[수정]

이때 만들었던 것에서 최대치로 다시 작업해보았다.

아예 새로 짜서 대시보드를 다시 만들어보고자 한다.

여기 이 대시보드는,,, 당시 내가 시간이 충분했더라면, 그리고 그 때 가진 지식 수준이라면 최대치가 이 정도였을 것이다! 싶은 대시보드임. 

바뀐 점

 

1. 색을 좀 더 깔끔하게 해보았다...분홍색은 아무래도 촌스럽다

2. 이중축 기능을 이용하여 년도별로만 넘버링되던 현상을 수정하고 각 유저/ 영화별 값을 도출하여 전시하였다!!

3. 시트 및 축의 지저분한 선을 정리했다

4. 대시보드 자체의 크기를 조정하여 보기 좋게 정리했다

 

> 이제부터는

1. 대시보드의 목적에 맞게 미리 개요도를 짜보고자 한다

2. 대시보드 배치의 자유도를 높여야 함. 지금은 너무 정렬되어 있어서 오히려 한 눈에 들어오지 않음

ㄴ 파이차트의 크기가 조정되지 않는 문제도 이러면 해결될 듯

3. 산포도랑 파이차트를 아예 빼버리는게 나을 듯. 왜냐면 막상 넣어놓으니 별 의미가 없다 ㅋㅋㅋㅋㅋ 

4. 배경 색이 하얀색이 아니라 다른 색이면 좀 더 멋스러울지도...?

5. 대시보드 자체에 텍스트를 좀 넣어야 설명도 되고, 보기에도 좋을 것 같다

6. 욕심부리지 말고 메인 그래프를 하나 넣고 나머지는 짜바리(?)로 넣는게 의미 전달에 좋을 듯 하다