본문 바로가기
IT 둘러보기

세그먼트 트리 느리게 업데이트하기 - Sogang ICPC Team, 2020 Winter

by 날고싶은커피향 2023. 2. 27.
반응형

세그먼트 트리는 데이터분석 기법 중 하나로, 나무 모양처럼 생긴 그래프입니다. 이 글에서는 세그먼트 트리라는 용어보다는 '트리'라고 지칭하겠습니다. 왜냐구요? 우리에게 익숙한 단어이기 때문이죠~^^(사실 저도 처음엔 무슨 말인지 몰랐어요..) 자 이제 본격적으로 트리를 그려볼까요?

트리는 어떻게 그리는 건가요?
우선 어떤 주제든 상관없이 아래 그림과 같이 표를 만들어줍니다. 그리고 각 항목별로 점수를 매겨주는거죠. 예를 들어 1번 문제인 “내가 좋아하는 음식”이라는 주제라면 이렇게 입력하면 됩니다.
그리고 2번 문제인 “좋아하는 영화 장르” 라는 주제라면 위와 같이 값을 넣어주면 되겠죠?
자 그러면 다음 단계로 넘어가보겠습니다. 우선 두 개의 변수명을 합쳐줄건데요. 먼저 ‘음식’ 이라는 변수명을 선택해서 오른쪽 마우스 버튼을 클릭 후 <이름 바꾸기>를 눌러줍니다. 이름을 바꿔준 후 엔터를 누르면 새로운 변수명이 생성됩니다. 새로 만들어진 변수명을 더블클릭 한 후 다시한번 오른쪽 마우스 버튼을 클릭 해 주세요. 이번에는 <값 할당>을 눌러줍니다. (변수명 변경 방법은 이전 포스팅에서도 설명드렸으니 참고하세요 ^^)
<값 할당>을 누르게 되면 왼쪽 창에 여러가지 목록이 뜨게 되는데요. 이때 제일 하단에 위치한 <새 값 #1>을 선택해 줍니다. 새 값 #1 을 선택하게 되면 기존에 있던 모든 값들이 사라지고 새롭게 만든 변수명의 값만이 남게 됩니다. 즉, 내가 원하는 대로 수정하기 위해서는 반드시 해당 과정을 거쳐야 합니다.
이제 마지막 단계입니다. 아까 만들었던 표 안에 숫자들을 모두 지워줘야 하는데요. 마찬가지로 삭제하고자 하는 셀을 선택한 후 오른쪽 마우스 버튼을 누른 후 <행 삭제>를 눌러주시면 됩니다. 행 삭제를 하게 되면 방금전까지만 해도 존재하던 셀이 사라지게 되고 빈칸으로만 남게 됩니다. 만약 잘못 지웠다면 Ctrl+Z 를 눌러서 되돌리기를 하면 되니 걱정하지 마세요 ~^^
이렇게 해서 완성된 결과물 입니다. 결과 화면을 보시면 아시겠지만 첫 번째 열에만 변화가 있고 나머지 열에는 아무런 변화가 없습니다. 이것이 바로 세그먼트 트리의 특징이며 장점이기도 합니다. 다른 분석기법과는 다르게 전체 자료를 보지 않고 특정 부분만을 보고 해석할 수 있다는 점이지요. 그렇다면 이러한 세그먼트 트리를 이용해서 어떠한 정보를 얻을 수 있을까요?

세그먼트 트리를 활용한다면 어떤 정보를 얻을 수 있나요?
먼저 앞서 말씀드린것처럼 다양한 분야에서 활용될 수 있지만 제가 소개드릴 내용은 마케팅 관련분야입니다. 온라인 쇼핑몰 또는 오프라인 매장 등 많은 곳에서 고객관리 및 상품 판매 촉진을 위해 CRM 시스템을 도입하고 있습니다. 하지만 대부분의 경우 자사몰 혹은 오픈마켓 별로 각각 별도의 프로그램을 개발해야 한다는 단점이 있죠. 그래서 최근에는 네이버나 구글 같은 포털사이트에서 제공하는 무료 서비스를 많이 이용하기도 합니다. 대표적인 예가 검색광고 인데요. 키워드 광고라고도 불리는 이 방식은 유저가 검색창에 특정 키워드를 입력했을 때 파워링크 영역에 노출되는 형태입니다. 따라서 사람들이 얼마나 자주 방문하는지, 어디서부터 유입되는지 등 구체적인 수치를 파악하는데 도움이 될 수 있겠죠.
하지만 단순 조회수만으로는 정확한 매출액을 예측하기 어렵습니다. 왜냐하면 실제로는 관심있는 키워드로 검색했지만 막상 사이트에 접속하니 마음에 들지 않아 이탈하는 경우도 많기 때문이죠. 이럴때 세그먼트 트리를 활용하면 보다 효과적으로 타겟팅 된 잠재고객을 확보할 수 있습니다. 또한 성별, 연령별로도 구분이 가능하기 때문에 좀 더 세분화된 타깃층을 공략할 수 있게 되죠. 물론 지금 당장 여러분께 보여드릴 수는 없지만 추후 기회가 된다면 직접 구현과정을 보여드리도록 하겠습니다.
오늘은 세그먼트 트리 만드는 방법에 대해 알아보았는데요. 어떠셨나요? 조금이나마 도움이 되셨나요? 앞으로도 더욱 유익한 정보 전달 드릴 수 있도록 노력하겠습니다. 감사합니다.

반응형

loading