본문 바로가기

Study/빅데이터분석기사

[빅데이터분석기사/빅분기/실기] 빅데이터분석기사 실기 시험 패키지 import 모음(sklearn & scipy)

SMALL

안녕하세요! 데코입니다!

오늘은 제6회 빅데이터 분석기사 실기 시험을 준비하면서 활용하는 패키지를 정리하려고 합니다!
  
저번 포스팅과 마찬가지로 맨 아래에 ipynb 파일도 같이 첨부해둘게요! 

필요하신 분들은 다운로드해도 됩니다!!

 

1. scikit-learn 주요 모듈

분류 모듈 설명
예제 데이터 sklearn.datasets scikit - learn에 내장되어 예제 데이터 세트를 제공함
변수처리 sklearn.preprocessing 데이터 전처리에 필요한 다양한 기능을 제공함(인코딩, 정규화, 스케일링 등)
sklearn.feature_selection 알고리즘에 큰 영향을 미치는 변수들을 선택하는 작업을 수행하는 다양한 기능 을 제공함
sklearn.feature_extraction • 텍스트 데이터나 이미지 데이터와 같이 벡터화된 변수를 추출하는 데 사용됨
• 예를 들어 텍스트 데이터에서 Count Vectorzer 등을 생성하는 기능을 제공함
• 텍스트 데이터의 변수 추출은 skeanieaure_extractiontext 모듈에. 이미지 데이터의 변수 추출은 skean feature_exraction.Image 모듈에 함수가 내장 되어 있음
변수 처리
&
지원 죽소
sklearn.decomposition • 차원 축소와 관련한 알고리즘을 지원함
• PCA, NMF, Iruncated SVD 등을 통해 차원 죽소 기능을 수행할 수 있음
데이터 분리
검증
&
매개변수 튜닝
sklearn.model_selection • 학습 데이터와 검증 데이터, 예측 데이터로 데이터를 분리하기 위해 활용하는 rrain_ test_splt 함수가 내장되어 있음
• 최적의 하이퍼 매개변수로 모델을 평가하기 위한 다양한 함수와 기능을 제공함
평가 sklearn.metrics • 분류, 회귀, 클러스터링 등에 대한 다양한 성능 측정 방법을 제공함
• 모델 평가를 위한 Accuracy, Precision, Recall, ROC - AUC, RMSE 등을 제공함
머신러닝
알고리즘
sklearn.ensemble • 앙상블 알고리슴을 제공함
• 랜덤포레스트, 에이다 부스트, 그래디언트 부스팅 등을 제공함
sklearn. linear_model • 선형회귀, 릿지(RIdge), 라쏘(Lasso) 및 로지스틱 회귀 등의 회귀 관련 알고리 즘을 지원함
• 또한 SGD(Stochastic Gradient Descent) 관련 알고리즘도 제공함
sklearn.naive_bayes • 나이브 베이즈 알고리슴을 제공함. 가우시안 NB, 다항 분포 NB 등이 있음
sklearn.neighbors • 최근접 이웃 알고리즘을 제공함
• K-NN 등이 있음
sklearn.svm 서포트 벡터 머신 알고리슴을 제공함
sklearn.tree • 트리 기반 머신러닝 알고리슴을 제공함
• 의사결정 트리 알고리즘 등이 있음
sklearn.cluster • 비지도 클러스터링 알고리즘을 제공함
• K-평균, 계증형, DBSCAN 등이 있음

 


2. scipy.stats 주요 모듈

분류 모듈 설명
가설 검정 scipy.stats.ttest_1samp 단일 표본 t-검정을 수행
scipy.stats.ttest_ind 독립 표본 t-검정을 수행
scipy.stats.f_oneway 분산 분석(ANOVA)을 수행, 세 개 이상의 독립된 데이터 집합의 평균이 유의하게 다른지 비교

 

- scipy.stats.ttest_1samp 예시

from scipy import stats

# 데이터 집합
data = [1, 2, 3, 4, 5, 6 ,7]

# 기준값
popmean = 3

# 단일 표본 t-검정
t_statistic, p_value = stats.ttest_1samp(data, popmean)

print("t statistic:", t_statistic) # 1.224744871391589
print("p-value:", p_value) # 0.266569703380069

주어진 데이터 집합 data의 평균과 기준값 popmean을 비교한 t-검정 결과가 출력됩니다!

 

t_statistic는 t-통계량을 나타내며, 

 

p_value는 해당 t-통계량에 대한 양측 검정의 p-값을 나타냅니다.

 

p-값이 일반적으로 0.05보다 작으면 귀무가설을 기각하고, 평균이 유의하게 다르다고 할 수 있습니다.

 

p-값이 일반적으로 0.05보다 크므로 귀무가설을 기각할 수 없습니다. 

 

즉, 주어진 데이터 집합 data의 평균과 기준값 popmean은 통계적으로 유의하게 다르지 않다고 할 수 있습니다.

 

- scipy.stats.ttest_ind 예시

from scipy import stats

# 두 개의 데이터 집합
data1 = [1, 2, 3, 4, 5]
data2 = [2, 4, 6, 8, 10]

# 독립 표본 t-검정
t_statistic, p_value = stats.ttest_ind(data1, data2)

print("t statistic:", t_statistic) # -1.8973665961010275
print("p-value:", p_value) # 0.09434977284243756

두 개의 독립된 데이터 집합 data1과 data2의 평균을 비교한 t-검정 결과가 출력됩니다!

 

위 문제와 동일하게 t_statistic는 t-통계량을 나타내며,

 

p_value는 해당 t-통계량에 대한 양측 검정의 p-값을 나타냅니다.

 

p-값이 0.05보다 크므로 귀무가설을 기각할 수 없습니다. 

 

즉, data1과 data2의 평균은 통계적으로 유의하게 다르지 않다고 할 수 있습니다.

 

- scipy.stats.f_oneway 예시

from scipy import stats

# 세 개의 데이터 집합
data1 = [1, 2, 3, 4, 5]
data2 = [2, 4, 6, 8, 10]
data3 = [3, 6, 9, 12, 15]

# 분산 분석 (ANOVA)
f_statistic, p_value = stats.f_oneway(data1, data2, data3)

print("F statistic:", f_statistic) # 3.857142857142857
print("p-value:", p_value) # 0.05086290933139865

세 개의 독립된 데이터 집합 data1, data2, data3의 평균을 비교한 분산 분석 결과가 출력됩니다!

 

f_statistic는 F-통계량을 나타내고,

 

p_value는 해당 F-통계량에 대한 양측 검정의 p-값을 나타냅니다.

 

p-값이 일반적으로 0.05보다 작으면 귀무가설을 기각하고,

 

그룹간의 평균이 유의하게 다르다고 할 수 있습니다.

 

p-값이 일반적으로 0.05보다 크므로 귀무가설을 기각할 수 없습니다. 

 

즉, 세 개의 데이터 집합 data1, data2, data3의 평균은 통계적으로 유의하게 다르지 않다고 할 수 있습니다.

 


오늘은 빅데이터분석기사 실기 시험을 준비하면서

시험에서 반드시 활용하는 패키지들에 대하여 정리해 보았습니다!

 

공부하면서 아마 최종 패키지들을 정리하는 포스팅도 쓰게 될 것 같아요!

 

이번에 실기 유형이 바뀌면서 제 생각에는 scipy 패키지를 활용해서

 

가설검정을 하는 부분이 꼭 출제되지 않을까 조심스럽게 예상해봅니다...!

 

scikit-learn 패키지들은 200% 나올 것이구요!

 

이전 포스팅에 활용한 help()와 dir() 함수도 같이 활용하면 

 

충분히 잘 할 수 있을 것이라고 생각해요!!

 



설명이 어려운 부분 혹은 잘 이해가 안 가는 부분

그리고 더 궁금한 내용이 있다면

언제든지 댓글로 남겨주세요!

빠르게 궁금증을 해결해 드릴게요!
  
공감과 댓글은 큰 힘이 됩니다!

오늘도 글을 읽어주셔서 감사합니다! :)

 

모두 빅데이터 분석기사 실기 시험 준비 화이팅입니다!

 

LIST