sklearn - Loading data

Haneul·2022년 12월 27일
1

2학기 때 배웠던 내용을 까먹을까봐 방학 때 복습을 하고자 한다.

정말 많은 모델을 배웠는데 일단 기초적인 것부터 차근차근 다시 공부하고, 공부했던 모델들은 각각의 모델을 하나하나 자세하게 살펴봐야겠다.

Sklearn : 파이썬 머신러닝 라이브러리 sklearn tutorial

💻 뉴스데이터 loading 하기

from sklearn.datasets import load_files
from sklearn.datasets import fetch_20newsgroups

categories = {'alt.atheism', 'soc.religion.christian', 'comp.graphics', 'sci.med'}

twenty_train = fetch_20newsgroups(subset='train', categories=categories, shuffle=True, random_state=0)

이렇게 카테고리에 해당하는 data들을 가져올 수 있다.

💻 sklearn의 feature_names

data : data set
target : label (array)
target_names : 개별 label 이름
feature_names : 개별 feature 이름
DESCR : data set, feature에 대한 설명

print(len(twenty_train.data))
print(twenty_train.target)
print(twenty_train.target_names)
print(twenty_train.data[0].split("\n")[:3])
print(twenty_train.DESCR)
print(twenty_train.filenames[0])

💻 붓꽃데이터 loading 하기 (iris)

from sklearn.datasets import load_iris
iris = load_iris() # 붓꽃데이터 loading
iris_data = iris.data
iris_label = iris.target

# 데이터프레임으로 data 확인하기 
import pandas as pd 

iris_df = pd.DataFrame(data=iris_data, columns=iris.feature_names)
iris_df["Label"] = iris.target # label column 추가

print(iris_df)

💻 train data, test data split 하기

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(iris_data, iris_label, test_size=0.2, random_state=7)

print('X_train 개수:', len(X_train), ', X_test 개수:', len(X_test))

test_size : test data의 비율

💻 의사결정나무를 이용하여 학습, 예측, 정확도 측정

from sklearn.tree import DecisionTreeClassifier

# DecisionTreeClassifier 객체 생성
dt_clf = DecisionTreeClassifier(random_state=11)

# 학습 수행
dt_clf.fit(X_train, y_train)

# 테스트 데이터로 예측 수행
pred = dt_clf.predict(X_test)
print(pred)

# 정확도 측정
from sklearn.metrics import accuracy_score
print('예측 정확도: {0:.4f}'.format(accuracy_score(y_test, pred)))

0개의 댓글