본문 바로가기
728x90

데이터분석가155

[TIL]본캠프 45일차(심화 프로젝트 4일차) 전날에서 RFM 빼고 갈아엎기사용 변수→범주형: product_category_name, payment_type, customer_city, customer_state, customer_region→연속형: price, shpping_charges, product_volume범주형 변수는 label encoding 시행, 연속형 변수는 왜도 보완을 위해 로그 변환 시행변수들의 정규화 후 PCA 시행(n_components = 2)Elbow method를 이용해 클러스터 갯수 설정클러스터 갯수 5개로 군집화 시행 후 실루엣 계수 확인추후 클러스터링 된 데이터를 통해 군집 분석 진행#PCA(주성분 분석) n = 2pca_main = main_data.copy()le = LabelEncoder()pca_mai.. 2024. 6. 20.
[TIL]본캠프 44일차(심화 프로젝트 3일차) 주성분 분석(PCA)기존 데이터들 중 주성분이 될 수 있는 컬럼들을 변환하여 주성분을 추출해내는 것(데이터 바뀜)위와 같은 이유로 원래의 컬럼의 데이터 원본이 중요하다면 PCA 진행시 제외할 것주성분: 전체 데이터의 분산을 가장 잘 설명해주는 것하나의 변수는 하나의 차원을 의미하기 때문에 주성분 분석을 통해 차원 축소를 진행할 수 있음프로젝트 내의 PCA 진행 및 클러스터링# 엘보우 방식 통해 클러스터 개수 계산sse = []scaler = StandardScaler()rfm_scaled = np.log(rfm[['recency','frequency','monetary']])rfm_scaled = scaler.fit_transform(rfm_scaled)for k in range(1, 11): km.. 2024. 6. 19.
[TIL]본캠프 43일차(심화 프로젝트 2일차) 파이썬을 이용한 RFM 분석Recency: 얼마나 최근에 구매를 했는가Frequency: 얼마나 자주 구매를 했는가Monetary: 총 얼마를 구매했는가#RFM 계산snapshot_date = main_data['order_purchase_timestamp'].max() + dt.timedelta(days=1)rfm = main_data.groupby('customer_id',as_index=False).agg({'order_purchase_timestamp': lambda x: (snapshot_date - x.max()).days, 'order_id': 'count', .. 2024. 6. 18.
[TIL]본캠프 42일차(심화 프로젝트 1일차) 프로젝트 데이터 소개브라질 고객의 커머스 데이터데이터 출처: https://www.kaggle.com/datasets/quangvinhhuynh/marketing-and-retail-analyst-e-comerce데이터 살펴보기 및 EDA 시작#라이브러리 임포트import pandas as pdimport numpy as npimport matplotlib as pltimport seaborn as sns#csv파일 로드customers = pd.read_csv('/content/drive/MyDrive/내배캠 심화 프로젝트/customers.csv')capstone_data_cleaned = pd.read_csv('/content/drive/MyDrive/내배캠 심화 .. 2024. 6. 17.
728x90