대부분의 라이브러리가 그렇지만, 사이킷런도 기본적인 데이터셋을 제공한다.
sklearn.dataset
모듈은 크게 dataset loaders와 dataset fetchers로 나뉜다.
전자는 Toy dataset을 제공하며 후자는 Real world dataset을 제공한다.
각 데이터셋에 대한 상세한 내용은 공식 문서를 참고하면 된다.
e.g. wine 데이터셋 공식 문서
https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_wine.html?highlight=wine#sklearn.datasets.load_wine
import pandas as pd
# wine 데이터 import
from sklearn.datasets import load_wine
data = load_wine()
# 특성 행렬
X = data.data
# 타겟 벡터
y = data.target
# 데이터 분리 모듈
from sklearn.model_selection import train_test_split
# train: test | 8:2
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 분류 모듈
from sklearn.ensemble import RandomForestClassifier
# 모델 생성
model = RandomForestClassifier()
# 모델 훈련
model.fit(X_train, y_train)
# 모델 예측
y_pred = model.predict(X_test)
# 정확도 예측 모듈
from sklearn.metrics import accuracy_score
from sklearn.metrics import classification_report
# 데이터셋 분리를 하지 않으면 정확도가 1.0 (100%)로 나옴
print(classification_report(y_test, y_pred))
print("accuracy = ", accuracy_score(y_test, y_pred))