반응형
sklearn.dataset에서 제공되는 데이터 셋들이 존재합니다. Scikit-learn 라이브러리는 파이썬의 머신러닝 라이브러리 중 하나인 분류, 회귀분석, 군집화, 의사결정나무 등의 다양한 머신러닝 알고리즘을 적용할 수 있는 다양한 데이터셋이 있습니다.
scikit-learn(사이킷런)은
머신러닝 라이브러리
참조 : https://scikit-learn.org/dev/index.html
1. 사이킷런의 데이터 셋
- 사이킷 런에서 제공되는 데이터 셋 입니다.
# 붓꽃데이터 from sklearn.datasets import load_iris iris = load_iris() print(iris.DESCR) #와인데이터 from sklearn.datasets import load_wine wine = load_wine() print(wine.DESCR) #유방암 진단 데이터 from sklearn.datasets import load_breast_cancer cancer = load_breast_cancer() print(cancer.DESCR) #대표 수종데이터 from sklearn.datasets import fetch_covtype covtype = fetch_covtype() print(covtype.DESCR) #뉴스그룹 텍스터 데이터 from sklearn.datasets import fetch_20newsgroups newsgroups = fetch_20newsgroups(subset='all') print(newsgroups.DESCR) #로이터 말뭉치 from sklearn.datasets import fetch_rcv1 rcv = fetch_rcv1() print(rcv.DESCR) #숫자필기 이미지 데이터 from sklearn.datasets import load_digits digits = load_digits() print(digits.DESCR) #올리베티 얼굴 사진 데이터 from sklearn.datasets import fetch_olivetti_faces olivetti = fetch_olivetti_faces() print(olivetti.DESCR) |
2. 사이킷런의 데이터 구조
- sklearn.utils.Bunch 라는 자료구조를 활용하는데,사전(dict)형 타입과 유사한 구조인 key-value 형식으로 구성되어 있습니다. 공통된 key는 아래와 같습니다.
|
- iris데이터 셋 불러오고 DESCR , data키, feature_names 등을 사용하기
from sklearn import datasets
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
iris = datasets.load_iris() #iris 데이터를 불러옴
print(iris.data[:5])
|
- sklearn.utils.Bunch 자료구조를 데이터프레임 구조로 변경합니다.
df = pd.DataFrame(iris.data, columns=iris.feature_names)
print(df.head())
|
- 레이블데이터를 데이터프레임에 추가합니다.
df['target']=iris.target
print(df.head())
|
3. 사이킷런의 데이터 구조
- iris데이터셋을 데이터프레임 구조로 변경하였고, 분석에 사용할 iris 데이터셋(df)을 이용하여 Sepal Length와 Sepal Width의 산점도를 시각화합니다. 산점도 결과 target(붓꽃 종)별로 구분된다는 것을 확인할 수 있습니다.
plt.figure(figsize=(10,7))
sns.scatterplot(x=df['sepal length (cm)'], y=df['sepal width (cm)'], hue=df['target'], palette="muted")
plt.title('Scatter plot by target')
|