전체 글 38

모델 성능 평가와 다중 분류 / 결정 트리의 기본 개념 / 랜덤 포레스트 개념과 구현

로지스틱 회귀 모델을 활용하여 고객 재구매를 예측하는 보고서 쓰기  import pandas as pdimport matplotlib.pyplot as pltimport koreanize_matplotlibimport seaborn as snsfrom sklearn.model_selection import train_test_splitfrom sklearn.linear_model import LogisticRegressionfrom sklearn.metrics import accuracy_score, classification_report, confusion_matrix# 데이터 로드df = pd.read_csv("customer_repurchase.csv")# 할인쿠폰사용여부 재구매여부 관계 시각화pl..

데이터 전처리, 특징 엔지니어링, 선형회귀, 로지스틱회귀

- 데이터를 머신러닝 모델에 적합한 형태로 변환1) 데이터 정리 및 탐색데이터 로드: pandas, NumPy 등을 활용하여 데이터를 불러옴기초 통계 확인: df.describe(), df.info() 등을 이용하여 데이터 타입과 분포 확인데이터 시각화: matplotlib, seaborn을 사용해 변수 간 관계 파악2) 결측값(Missing Values) 처리(1) 결측값 확인import pandas as pddf.isnull().sum() # 결측값 개수 확인 (2) 결측값 처리 방법 # 삭제(Dropping): 결측값이 적은 경우 해당 행 또는 열 제거df.dropna(inplace=True) # 대체(Imputation): 평균, 중앙값, 최빈값 또는 예측값으로 결측값을 채움df.fillna(d..

머신러닝의 기본 개념 이해

머신러닝은 전통적인 프로그래밍 방식과는 달리 명시적인 규칙을 프로그래머가 지정하는 것이 아니라, 알고리즘(계산방식)이 데이터를 분석하여 스스로 규칙을 찾아내는 방식으로 동작한다. 머신러닝의 정의- 데이터에서 패턴을 찾아 학습하고, 새로운 데이터에 대해 예측을 수행하는 시스템 # 회귀식으로 머신러닝의 기본 개념 이해하기1) Y = W * XY → 라벨, 예측하려는 값, 출력(Output, 종속변수)X → 입력 데이터, 학습데이터 (Input, 독립변수)W → 가중치(Weight) 또는 계수(Coefficient), 모델, 패턴, 모델이 학습해야 할 값☞ '입력 데이터(X)'에 어떤 '가중치(W)'를 곱해서 '출력(Y)'을 예측하는 것!즉, 머신러닝 모델은 적절한 W(가중치)를 찾는 과정. 머신러닝 목표:=..

웹서버로 보고서 구현(flask) / 루커 스튜디오 실습 및 데이터 소스 연결

웹서버(flask)로 보고서 구현하기 연습1) HTML은 문서의 구조(뼈대) 부분이며 CSS는 문서의 디자인 요소, 자바스크립트는 동적특성부여. (클릭, 입력 등 사용자의 행동에 따라 변화하거나 반응하는 기능) 위 파일에서 analysis.html 파일은 자바스크립트 코드도 포함되어 있다. (analysis.html은 index.html과 마찬가지로 templates 폴더에 넣으면 된다. 위 그림의 플라스크 기본 규격은 만든사람이 정해놓은 규칙과도 같다. 터미널을 열고 MariaDB를 실행하여 플라스크의 기본 규격에 맞게 폴더를 만들고 폴더권한을 부여한 다음, 해당폴더에 파일질라로 파일을 옮겨놓고 python3 app.py를 입력하면 웹에서 확인이 가능하다. (주소는 http://vm외부ip주소:포트번호..

* 태블로 실습 / Chart.js를 이용한 웹페이지 실습

태블로 그래프 그리기 연습  시간대 별 매출 금액 변화  남녀 매출 비교  상권 유형별 매출 차이  업종별 평균 거래 건수 비교  서울 내 특정 상권의 요일별 매출 변화  업종 시간대별 매출 패턴 분석  업종별 시간대별 매출 금액 분석  업종별로 주중과 주말 매출 비율 분석   상권 유형별 연령대 매출 비중 비교   매출 건수와 매출 금액 간 관계 분석   매출이 높은 업종 상위 10 시각화   상권별 연령대별 주요 고객층 분석   Chart.js를 이용한 웹페이지 실습

Tableau 기본 사용법

Tableau란?- 데이터를 시각적으로 분석하고 대시보드를 생성할 수 있는 데이터 시각화 도구- 코드를 작성하지 않고도 데이터를 쉽게 분석 가능- 직관적인 드래그 앤 드롭 방식 지원 Tableau의 장단점* 장점1) 직관적인 UI2) 강력한 시각화 기능- 쉽게 다 같이 볼 수 있는 대시보드 만들기가 가능하다 - 데이터 변경시 자동으로 실시간 반영3) 다양한 데이터 연결- Excel, CSV, Google Sheets, JSON- 관계형 데이터베이스(MySQL, PostgreSQL, MariaDB 등)- 클라우드 데이터(Warehouse: Google BigQuery, AWS Redshift 등)4) 빠른 데이터 처리 * 단점1) Tableau Public은 모든 데이터가 공개됨 (비공개 저장 불가)2) ..

고객 세분화를 위한 통계 분석(군집화, K-평균 군집분석), 확률분포, 혼동행렬, 마케팅 성과예측 (1)

고객 세분화를 위한 통계 분석 고객 세분화는 고객의 특성(특징)과 행동패턴을 분석하여 비슷한 그룹으로 나누는 과정이다. → 군집화(clustering)고객 세분화를 위한 대표적 통계 분석기법으로는 기술 통계 분석, K-평균 군집 분석, RFM 분석, 계층적 군집 분석이 있다. 기술 통계 분석- 데이터의 분포와 기본적인 특징을 파악하는데 사용 (EDA)평균 (Mean): 고객 1인당 평균 구매 금액, 평균 방문 횟수 등을 분석. 평균은 그 데이터들을 대표하는 값중앙값 (Median): 데이터의 중앙값을 계산하여 이상치의 영향을 최소화표준편차 (Standard Deviation): 고객 간 소비 패턴의 차이 파악, 중심값에서 얼마나 떨어져 있는지.최댓값 및 최솟값 (Max & Min): 가장 높은 구매 금액..

마케팅 데이터의 주요 지표 분석 (보고서 실습)

마케팅 데이터의 주요 지표마케팅 데이터 분석에서 주요 지표를 활용하면 캠페인의 효과를 수치적(정량적)으로 평가할 수 있다. 이를 바탕으로 향후 전략을 수립하는데 활용할 수 있다.각 지표를 종합적으로 분석하여 트래픽 증가 → 전환율 최적화 → 광고 효율성 개선 → 고객 유지 및 충성도 향상이라는 구조를 구축하는 것이 중요하다.마케팅 목표에 맞는 주요 지표를 설정하고, 지속적으로 모니터링하며 최적화해야한다.  트래픽 관련 지표방문자 수특정 기간 동안 웹사이트를 방문한 총 사용자 수신규 방문자 vs. 재방문자 비교 분석 가능페이지뷰방문자가 특정 웹사이트에서 본 페이지 수페이지뷰가 많을수록 사용자가 많은 콘텐츠를 소비했음을 의미세션사용자가 웹사이트를 방문해 특정 시간 동안 머무른 활동 단위평균 세션 길이를 분석..

상관관계의 이해, 상관분석 / 웹시스템 이용한 마케팅 데이터 획득 이해

상관관계란?- 한 변수의 변화가 다른 변수의 변화와 어떤 관계가 있는지 나타냄- 한 변수가 증가할 때 다른 변수가 증가하거나 감소하는 패턴이 있는지 분석 상관계수- 상관관계의 정도는 상관계수로 표현- 가장 많이 사용되는 상관계수는 피어슨 상관계수(기타 스피어만 상관계수, 켄달의 타우 가 있음)- 독립변수가 많을 때 추리는 용도로 좋음 상관계수 해석r = 1 : 완전한 양의 상관관계 (한 변수가 증가할 때 다른변수도 완전히 비례하여 증가)0.7 ≤ r 0.3 ≤ r r = 0 : 상관관계 없음 (두 변수 간 관계가 없음)- 0.3 ≤  r - 0.7 ≤  r r = - 1 : 완전한 음의 상관관계 (한 변수가 증가할 때 다른변수는 완전히 반비례하여 감소)  상관계수 사용시 주의사항- 반드시 인과관계가 있는..

회귀분석 (단순회귀분석과 다중회귀분석)

지난 수업 예제 코드 ( 광고비와 판매량 사이의 관계를 선형회귀분석으로 분석)# statsmodels - 통계분석 라이브러리# numpy - 숫자를 다루기 위한 라이브러리import statsmodels.api as smimport numpy as np# 독립변수(광고비)와 종속변수(판매량) 예제 데이터# np.array()를 써서 데이터를 숫자로 다루기 쉽게 한다.X = np.array([1, 2, 3, 4, 5]) # 광고비(독립변수)Y = np.array([3, 6, 7, 8, 11]) # 판매량(종속변수)# 상수항 추가# 상수항(절편)(b)을 추가하는 코드# sm.OLS() 같은 함수는 절편을 따로 수동으로 추가해줘야 함.X = sm.add_constant(X)# 선형 회귀 모델 학습# sm...