本ページでは、R と Python それぞれで機械学習の一手法である、ガウシアンナイーブベイズ分類器 (Gaussian Naive Bayes) を利用した判別分析の方法を紹介します。
本例では、あくまで両環境でのコードや分析結果の表示についての比較の目的で行ったため、分析手法の説明や学習や検証における詳細なパラメータ設定は行っていないことをあらかじめご了承ください。
R での実装例
e1071 パッケージを用いて実行できます。
ソースコード
library(e1071) data(iris) trainset <- iris[1:149,] testset <- iris[150,][-5] nb.model <- naiveBayes(Species ~ ., data = trainset) predict(nb.model, testset)
出力結果
Python での実装例
scikit-learn の sklearn.naive_bayes.GaussianNB クラスを用いて実行できます。
ソースコード
from sklearn.datasets import load_iris from sklearn.naive_bayes import GaussianNB iris = load_iris() X, y = iris.data[:-1], iris.target[:-1] nb = GaussianNB() nb.fit(X, y) print(nb.predict([iris.data[-1]]))
出力結果
“2” と出力されているのは “Virginica” なので、正しく推定できたことがわかります。

