RobustScaler 적용 결과를 그래프에 그립니다.
10309 단어 파이썬scikit-learnmatplotlib기계 학습
RobustScaler의 특징
검증 코드
import numpy as np
import matplotlib.pyplot as plt
from sklearn.preprocessing import RobustScaler
# 検証用データポイント
X = np.array([[-4], [-3], [-1], [0], [2]])
# RobustScalerを検証用データポイントに適用する。
scaler = RobustScaler()
X_ft = scaler.fit_transform(X)
# 適用前後のデータポイントをグラフに描画する。
fig = plt.figure(figsize=(8,4))
ax1 = fig.add_subplot(1, 1, 1)
# 適用前のデータポイントをx=1上にプロットする。
ax1.hlines([1], -5, 3)
ax1.plot(X, np.array([[1], [1], [1], [1], [1]]), "o")
# 適用後のデータポイントをx=0上にプロットする。
ax1.hlines([0], -5, 3)
ax1.plot(X_ft, np.array([[0], [0], [0], [0], [0]]), "o")
# グラフの見た目を調整する。
ax1.set_xlim(-4.5, 2.5)
ax1.set_ylim(-0.5, 1.5)
ax1.set_yticks([0, 1])
ax1.set_yticklabels(["after", "before"])
# グラフに注釈(補助線など)を入れる。
ax1.vlines([X_ft[2]], -1, 0, linestyles='dashed')
ax1.vlines([X_ft[1], X_ft[3]], 0, 0.5, linestyles='dashed')
hw = 0.1
hl = 0.1
ax1.hlines([0.25], X_ft[1], X_ft[3], linestyles='dashed')
# 25%分位数は2番目(インデックス1)、75%分位数は4番目(インデックス3)となる。
ax1.arrow(X_ft[3][0]-hl, 0.25, 0.001, 0, fc='black', ec='black', head_width=hw, head_length=hl)
ax1.arrow(X_ft[1][0]+hl, 0.25, -0.001, 0, fc='black', ec='black', head_width=hw, head_length=hl)
ax1.text((X_ft[3][0]+X_ft[1][0]) / 2 - 0.05, 0.3, '1', fontsize=10)
# グラフを表示する。
plt.show()
실행 결과
Reference
이 문제에 관하여(RobustScaler 적용 결과를 그래프에 그립니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/unhurried/items/7a79d2f3574fb1d0cc27텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)