본문 바로가기

분류 전체보기

(131)
[240409] 클러스터링 분석 - ⑤ DBSCAN (실습) [파이썬으로 하는 클러스터링 분석 by 강민구 튜터] ▶ 이론 내용: [240408] 클러스터링 분석 - ⑤ DBSCAN ▶ 실습 코드 - DBSCAN 1. 패키지 호출 및 데이터 불러오기 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn import datasets from sklearn.preprocessing import StandardScaler from sklearn.cluster import DBSCAN from sklearn.cluster import KMeans # 데이터셋 불러오기 # 2개의 배열로 이루어져 있어, 각 실수 배열을 data_circle..
[240408] 클러스터링 분석 - ⑤ DBSCAN [파이썬으로 하는 클러스터링 분석 by 강민구 튜터] 1. DBSCAN 1) 정의 - Density-Based Spatial Clustering Of Applications With Noise의 약자 - Noise를 포함한 데이터에 대해 밀도 기반으로 클러스터링 하는 알고리즘 - 데이터가 밀집되어 있는 집합을 클러스터로 간주하고 이를 군집화 2) DBSCAN의 장점과 한계 (1) 장점 ① 기하학적으로 패턴이 있는 데이터 군집화에 유리 ② K-means 같은 알고리즘과 달리 군집 갯수를 정할 필요가 없음 (단, 다른 하이퍼 파라미터가 존재) (2) 한계 ① 다양한 밀도를 가지고 있는 데이터 형태는 군집화 성능이 떨어짐 ② 하이퍼 파라미터 값에 따라 클러스터링 결과가 크게 달라지며, 적정 하라미터 값 지정이..
[240405] 클러스터링 분석 - ④ K-means 군집화 (실습) [파이썬으로 하는 클러스터링 분석 by 강민구 튜터] ▶ 이론 내용: [240404] 클러스터링 분석 - ④ K-means 군집화 ▶ 실습 코드 - K-means 군집화 1. 패키지 호출 및 데이터 불러오기 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn import datasets from sklearn.preprocessing import StandardScaler from sklearn.cluster import KMeans from sklearn.metrics import silhouette_score, silhouette_samples import plot..
[240401주차] 본캠프 W16 WIL : Weekly I Learned 지난 일주일을 돌아봄으로써 나의 현재 상태를 파악하고 더 나은 다음 주를 만들기 위해 어떤 부분을 어떻게 채워나갈지 고민하는 것 내가 한 일(Facts) - 클러스터링 수준별 학습 수강 - 최종 프로젝트 분석 방향 설정 및 서비스 현황 분석 등 - TIL 작성 느낀점(Feelings) - 최종 프로젝트 2주차다. EDA와 전처리에 생각보다 시간이 오래 걸렸다. 데이터셋이 총 9개라 병합하면서 고려할 점이 많았다. 이상치나 결측치, 분석 범위 등에 데이터를 하나둘 빼면서 개수가 줄어든 것은 아쉽지만, 전반적인 분석 과정에서 필요한 작업이라 판단했다. 그전엔 EDA를 하면서도 이게 맞나? 싶었는데, 금번 프로젝트를 계기로 EDA랑 더 가까워진 느낌이다. - 클러스터링..
[240404] 클러스터링 분석 - ④ K-means 군집화 [파이썬으로 하는 클러스터링 분석 by 강민구 튜터] 1. K-means 군집화 (K-means Clustering) 1) 정의 - Centroid라는 중심점과의 평균 거리를 활용해 K개 군집을 만드는 방법 - 대표적인 분리형 군집화 방법 중 하나 └ 계층적 군집화와 달리, 전체 데이터의 구간을 나누어 클러스터를 만드는 방법 └ 모든 데이터 포인트는 하나의 클러스터에만 속할 수 있음 - Python Scikit-Learn에 구현된 K-means 알고리즘은 유클리디언 거리 기반 - K-means 알고리즘의 목적 ① Centroid의 최적화: 최적의 Centroid 위치 선정 ② Membership 최적화: 각각의 데이터 포인트를 K개의 클러스터 중 최적의 한 곳에 할당 - 군집개수인 K는 사용자가 직접 지..
[240403] 클러스터링 분석 - ③ 계층적 군집화와 덴드로그램 (실습) [파이썬으로 하는 클러스터링 분석 by 강민구 튜터] ▶ 이론 내용: [240402] 클러스터링 분석 - ③ 계층적 군집화와 덴드로그램 ▶ 실습 코드 - 계층적 군집화 1. 패키지 호출 및 데이터 불러오기 import numpy as np import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn import datasets from sklearn.preprocessing import StandardScaler from sklearn.decomposition import PCA from sklearn.cluster import AgglomerativeClustering from scipy.cluster.hie..
[240402] 클러스터링 분석 - ③ 계층적 군집화와 덴드로그램 [파이썬으로 하는 클러스터링 분석 by 강민구 튜터] 1. 계층적 군집화 (Hierarchical Clustering) 1) 정의 - 각 개별 데이터를 하나의 군집으로 가정하고, 가까이 있는 군집부터 순차적으로 합치는 방식 └ 다른 말로 하면, 여러 군집들을 모아서 하나의 커다란 군집을 만드는 과정 - 덴드로그램이라는 트리 형태 그래프로 시각화 가능 2) 계층적 군집화 방식 ① Agglomerative Clustering(상향식 군집화) - 각각의 데이터를 하나의 군집으로 여기고, bottom-up으로 묶어나가는 방식 - 일반적으로 이야기하는 계층적 군집화는 상향식 군집화에 해당 ② Divisive Clustering(하향식 군집화) - 전체 데이터가 포함된 하나의 군집을 top-down 방식으로 영역을..
[240401] 파이썬 유저 코호트 분석 (월별/주차별) 0. 들어가며 - 2016.09. ~ 2018.09 기간 데이터를 활용해 월별/주차별 유저 코호트 분석을 하고자 함 - 월은 y-m, 주차는 y-w로 기간을 따로 쪼개 보지 않고 전체 기간의 코호트 흐름을 보는 것이 목적 - 코호트에 들어갈 측정값은 고유 유저의 구매수를 위주로 보았으나 매출액 칼럼도 생성하여 추가 확인함 1. 데이터 전처리 1) 주차별 숫치 표기법: dt.strftime('%V') vs. dt.isocalendar().week vs. dt.strftime('%Y-%w') - 1년 총 1~52주차로 년도별 주차의 숫자를 라벨링하여 주 단위 이탈 흐름을 살펴 보고자 함 - (1차 시도) dt.strftime('%Y-%w'): 주의 값이 0부터 시작하는 오류 발견 & str 형태라 구매주차 ..