#モジュール
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings("ignore")
from sklearn.model_selection import train_test_split
#irisデータの読み込み
from sklearn.datasets import load_iris
iris = load_iris()
#データの可視化
import seaborn as sns
sns.set_style("darkgrid")
df = sns.load_dataset("iris")
g = sns.pairplot(df,hue = "species",diag_kind="kde")
plt.show()
引数diag_kind='kde'
とすると対角線のグラフの種類をヒストグラムからカーネル密度推定に変更できる。
カーネル密度推定は分布を特に指定せず、(ノンパラメトリック)ある分布の密度関数を推定する方法。
#説明変数と目的変数を設定
iris_X = iris.data
iris_Y = iris.target
#データを訓練用とテスト用に分割
iris_X_train,iris_X_test,iris_Y_train,iris_Y_test = train_test_split(iris_X,iris_Y,random_state=0)
# ロジスティック回帰モデルインポート
from sklearn.linear_model import LogisticRegression
# 使用するモデルを指定する
logreg = LogisticRegression()
# モデルを訓練させる
logreg.fit(iris_X_train, iris_Y_train)
# 先ほど分割したテストデータをモデルに予測してもらう
Y_pred = logreg.predict(iris_X_test)
# 精度確認
from sklearn.metrics import accuracy_score
# 予測結果を確認する
acc_logreg = round(accuracy_score(Y_pred, iris_Y_test) * 100, 2)
print(acc_logreg)
97.37
コメント