728x90
반응형

전체 글 33

분석을 위한 통계(Statistics)2

이번에는 T-Test, 카이제곱, ANOVA에 대해서 간단하 코드와 적용가능 분야에 대하여 정리하였습니다. T-Test(T-검정)T-검정(T-Test)은 두 집단 간의 평균 차이가 통계적으로 유의미한지를 판단하기 위해 사용되는 통계 기법입니다. 이는 통계적 판단을 내릴 때 사용되는 t-분포(t-distribution)에서 유래합니다.T-검정은 주로 세 가지 유형으로 나뉩니다:독립표본 T-검정 (Independent Samples T-test)서로 관련이 없는 두 집단의 평균을 비교합니다.대응표본 T-검정 (Paired Sample T-test)동일한 집단의 평균을 두 시점에서 비교합니다.단일표본 T-검정 (One-sample T-test)한 집단의 평균을 이미 알려진 특정 값과 비교합니다.계산방법간단히 ..

데이터분석 2025.04.13

다중공선성(multicollinearity)

다중공선성( Multicollinearity)이란?두 개 이상의 독립변수(설명변수)가 서로 강하게 상관되어 있는 상태즉, 독립변수들 사이에 중복된 정보가 많다는 뜻입니다. 회귀 분석이나 머신러닝 모델링에서 매우 중요한 이슈 중 하나로 모델의 해석력 저하와 예측 불안정성을 유발할 수 있기 때문에 반드시 조치가 필요함예시총매출과 수량 × 단가가 모두 변수로 포함된 경우 → 높은 상관관계 나이와 연령대, 경력과 근무연수 같은 경우도 마찬가지다문제점문제설명회귀계수 불안정예측값은 비슷하더라도, 회귀계수(β)가 민감하게 변함해석 어려움각 독립변수의 개별적 영향 해석이 어려움과적합 위험예측 성능이 낮아지고, 새 데이터에 일반화가 어려움 확인방법 1. 상관계수(Correlation Matrix)독립변수들끼리 상관계수 ..

데이터분석 2025.04.10

분석을 위한 통계(Statistics)1

탐색적 데이터 분석(EDA)에서 통계는 데이터의 특성을 이해하는 데 중요한 역할을 합니다.통계 개념은 추가 분석이나 모델링을 수행하기 전에 데이터를 더 잘 요약, 설명 및 해석하는 데 사용됩니다. EDA에서 자주 사용되는 몇 가지 주요 통계 개념에 대해 설명드리겠습니다. 1. 기술적 통계( Descriptive Statistics) 중심 경향 측도 (Measures of Central Tendency):평균(Mean):데이터셋에 포함된 모든 값의 산술 평균을 계산합니다.중앙값(Median):정렬된 데이터셋에서 중앙에 위치한 값으로, 정규분포가 아니거나 이상치가 있는 데이터에 적합합니다.최빈값(Mode):데이터셋에서 가장 자주 나타나는 값으로, 범주형 데이터(categorical data)에서 유용하게 사..

데이터분석 2025.04.10

Colab 한글폰트 문제 해결

1. 현상Colab에서 matplotlib 사용시 한글이 깨지는 현상을 볼수 있습니다.duckdb 샘플코드로 막대그래프와 꺽은선 그래프를 그렸는데 한글이 깨지네요.코드는 다음과 같습니다.import duckdbimport matplotlib.pyplot as plt# DuckDB에서 Parquet 읽기 (Pandas 없이)query = """ SELECT region, COUNT(*) AS cnt, AVG(sales) AS avg_sales FROM 'sales.parquet' GROUP BY region ORDER BY cnt DESC"""result = duckdb.query(query).to_df()# 그래프 스타일 설정 (선택)plt.style.use('ggplot')# x축..

데이터분석 2025.04.10

DuckDB-3 (Parquet 및 Copy)

Parquet 파일 생성 및 조회우선 Parquet 파일이 없으면 생성부터 시작합니다.import pandas as pd# 예시 DataFramedf = pd.DataFrame({ 'region': ['Seoul', 'Busan', 'Seoul', 'Incheon', 'Busan', 'Seoul'], 'sales': [100, 200, 150, 180, 210, 170]})# Parquet 저장df.to_parquet("sales.parquet", index=False) Parquet 파일 조회하는 예입니다.import duckdb# DuckDB에서 Parquet 읽기 (Pandas 없이)query = """ SELECT region, COUNT(*) AS cnt, AVG(sales) A..

데이터분석 2025.04.10

DuckDB-2(테이블 활용)

RDBMS처럼 사용하여 테이블을 만들고, 데이터를 저장하고 관리하는 방법입니다. DuckDB는 내장형이지만 SQL을사용해서 테이블 생성, INSERT, SELECT 등 대부분의 관계형 DB 작업이 가능합니다. 1. DuckDB에 테이블 생성하고 데이터 삽입하기import duckdb# DuckDB 연결 (메모리 상에서 작동하거나, 파일 저장 가능)con = duckdb.connect("myduckdb.db") # 'myduckdb.db' 파일 생성됨# 1. 테이블 생성 (SQL 문법 그대로 사용)con.execute(""" CREATE TABLE users ( id INTEGER, name TEXT, age INTEGER );""")# 2. 데이터 삽입c..

데이터분석 2025.04.09

DuckDB-1 (파일SQL)

DuckDB는 데이터 분석가, 엔지니어, 사이언티스트들 사이에서 Pandas를 대체할 차세대 도구로 주목받는 초고속 분석용 데이터베이스입니다.DuckDB는 "SQLite for Analytics" 라고 불리는 경량 분석용 SQL 데이터베이스로컬에서 설치 없이 사용할 수 있는 내장형(in-process) DBSQL 문법으로 대규모 데이터를 빠르게 분석 가능Pandas, Arrow, Parquet, CSV 등 다양한 형식 지원메모리 사용량이 적고, 병렬 처리로 매우 빠름 Pandas로 다루기 벅찬 대용량 파일 처리#csv 파일 생성import duckdbfrom sklearn.datasets import load_irisimport pandas as pd# iris 데이터 불러오기iris = load_iri..

데이터분석 2025.04.08

pandas 컬럼명 변경

Pandas DataFrame의 컬럼 이름(열 이름)을 변경하는 방법은 여러 가지가 있는데, 가장 자주 쓰이는 3가지 방법을알아보자 1. df.columns = [...] 로 전체 컬럼명 한번에 변경모든 컬럼명을 한꺼번에 변경시 간단히 사용import pandas as pddf = pd.DataFrame({ 'A': [1, 2], 'B': [3, 4], 'C': [5, 6]})# 컬럼명 변경df.columns = ['col1', 'col2','col3']print(df) 2. df.rename(columns={...}) 로 부분 변경 (가장 많이 사용) 컬럼 일부만 바꾸고 싶을 때 유용하고, inplace=True 옵션으로 원본 수정도 가능df.rename(columns={'col1': ..

데이터분석 2025.04.08

비모수검정

정규성 가정을 만족하지 않을 때 사용하는 것이 바로 비모수 검정 (Non-parametric test)입니다.대표적으로 Wilcoxon과 Mann–Whitney U 검정이 있고, 각각 다음과 같은 상황에서 사용됩니다.  1. Wilcoxon Signed-Rank Test (윌콕슨 부호 순위 검정)대응표본(같은 그룹의 사전-사후) 비교: Wilcoxon Signed-Rank Test정규성 없을 때 paired T-test 대신 사용from scipy.stats import wilcoxonbefore = [60, 65, 70, 66, 72, 68, 75, 70, 64, 69]after = [63, 67, 74, 69, 76, 70, 78, 72, 66, 71]stat, p = wilcoxon(before,..

데이터분석 2025.04.08

정규성 검정(Normality Tests)

T-검정, 회귀분석, ANOVA 같은 통계 분석에서 데이터가 정규분포(normal distribution)를 따른다는 가정은 매우 핵심적입니다. 이 정규성(normality)을 확인하는 방법에는 통계적 검정과 시각화 두 가지가 있습니다. 정규성 검정 방법 방법설명함수Shapiro-Wilk Test샘플이 정규분포인지 확인하는 가장 널리 쓰이는 방법일반적인 정규성 검정 (n scipy.stats.shapiro()Kolmogorov–Smirnov Test표본 분포와 정규분포 비교 (샘플 많을 때)scipy.stats.kstest()Anderson-Darling Test여러 분포 비교 지원, 더 정밀scipy.stats.anderson()QQ Plot (시각화)이론적인 정규분포와 실제 데이터 비교statsmod..

데이터분석 2025.04.08
728x90
반응형