본문 바로가기

카테고리 없음

[패스트캠퍼스 수강 후기] 데이터분석 인강 100% 환급 챌린지 40회차 미션

55. ch07. sklearn - 비지도학습 - 01. 비지도학습이란 - 57. ch07. sklearn - 비지도학습 - 03. 차원축소 - PCA

55. ch07. sklearn - 비지도학습 - 01. 비지도학습이란

목표치가 없음.

차원 축소: PCA, LDA, SVD
군집화: KMeans Clustering, DBSCAN
군집화 평가



56. ch07. sklearn - 비지도학습 - 02. 차원축소란

feature의 갯수를 줄이는 것을 뛰어 넘어, 특징을 추출

from sklearn.preprocessing import StandardScaler
from sklearn.decomposition import PCA
from sklearn import datasets
import pandas as pd


iris = datasets.load_iris()

data = iris['data']

data[:5]


df = pd.DataFrame(data, columns=iris['feature_names'])

df.head()

df['target'] = iris['target']

df.head()


57. ch07. sklearn - 비지도학습 - 03. 차원축소 - PCA

분산(variance)을 최대한 보존

components에 1보다 작은 값을 넣으면, 분산을 기준으로 차원 축소
components에 1보다 큰 값을 넣으면, 해당 값을 기준으로 feature를 축소


from sklearn.decomposition import PCA

pca = PCA(n_components=2)


data_scaled = StandardScaler().fit_transform(df.loc[:, 'sepal length (cm)' : 'petal width (cm)'])

pca_data = pca.fit_transform(data_scaled)


data_scaled[:5]

pca_data[:5]


import matplotlib.pyplot as plt
from matplotlib import cm
import seaborn as sns

%matplotlib inline

plt.scatter(pca_data[:, 0], pca_data[:, 1], c=df['target'])

pca = PCA(n_components=0.99)

pca_data = pca.fit_transform(data_scaled)

pca_data[:5]




패스트캠퍼스 데이터분석 강의 링크
bit.ly/3imy2uN