13. ch03. sklearn - 전처리 기본 - 07. Standardization (표준화) - 15. ch04. sklearn - 분류 - 02. dataset으로부터 데이터프레임
13. ch03. sklearn - 전처리 기본 - 07. Standardization (표준화)
표준화 (Standard Scaling)
from sklearn.preprocessing import StandardScaler
standard_scaler = StandardScaler()
x = np.arange(10)
# outlier 추가
x[9] = 1000
x.mean(), x.std() 평균, 표준편차
scaled = standard_scaler.fit_transform(x.reshape(-1, 1))
x.mean(), x.std()
scaled.mean(), scaled.std()
round(scaled.mean(), 2), scaled.std()
14. ch04. sklearn - 분류 - 01. iris 데이터 로드 (dataset 활용)
import warnings
# 불필요한 경고 출력을 방지합니다.
warnings.filterwarnings('ignore')
from sklearn.datasets import load_iris
# iris 데이터셋을 로드합니다.
iris = load_iris()
DESCR: 데이터셋의 정보를 보여줍니다.
data: feature data.
feature_names: feature data의 컬럼 이름
target: label data (수치형)
target_names: label의 이름 (문자형)
print(iris['DESCR'])
data = iris['data']
data[:5]
feature_names = iris['feature_names']
feature_names
target = iris['target']
target[:5]
iris['target_names']
15. ch04. sklearn - 분류 - 02. dataset으로부터 데이터프레임
데이터프레임 만들기
df_iris = pd.DataFrame(data, columns=feature_names)
df_iris.head()
df_iris['target'] = target
df_iris.head()
시각화
import matplotlib.pyplot as plt
import seaborn as sns
sns.scatterplot('sepal width (cm)', 'sepal length (cm)', hue='target', palette='muted', data=df_iris)
plt.title('Sepal')
plt.show()
sns.scatterplot('sepal width (cm)', 'sepal length (cm)', hue='target', palette='muted', data=df_iris)
plt.title('Petal')
plt.show()
from mpl_toolkits.mplot3d import Axes3D
from sklearn.decomposition import PCA
fig = plt.figure(figsize=(8, 6))
ax = Axes3D(fig, elev=-150, azim=110)
X_reduced = PCA(n_components=3).fit_transform(df_iris.drop('target', 1))
ax.scatter(X_reduced[:, 0], X_reduced[:, 1], X_reduced[:, 2], c=df_iris['target'],
cmap=plt.cm.Set1, edgecolor='k', s=40)
ax.set_title("Iris 3D")
ax.set_xlabel("x")
ax.w_xaxis.set_ticklabels([])
ax.set_ylabel("y")
ax.w_yaxis.set_ticklabels([])
ax.set_zlabel("z")
ax.w_zaxis.set_ticklabels([])
plt.show() (3d로)
패스트캠퍼스 데이터분석 강의 링크
bit.ly/3imy2uN