のためにRでナイーブベイズを作成するには:実装するとき、私はエラーが発生していますは、どのように私は既知の情報に基づいて、Rでナイーブベイズモデルを実装しようとしている数値とカテゴリ変数
Age group, e.g. "18-24" and "25-34", etc.
Gender, "male" and "female"
Region, "London" and "Wales", etc.
Income, "£10,000 - £15,000", etc.
Job, "Full Time" and "Part Time", etc.
。私のコードは以下のとおりである:上記のシナリオで
library(readxl)
iphone <- read_excel("~/Documents/iPhone_1k.xlsx")
View(iphone)
summary(iphone)
iphone
library(caTools)
library(e1071)
set.seed(101)
sample = sample.split(iphone$Gender, SplitRatio = .7)
train = subset(iphone, sample == TRUE)
test = subset(iphone, sample == FALSE)
nB_model <- naiveBayes(Gender ~ Region + Retailer, data = train)
pred <- predict(nB_model, test, type="raw")
、私はiPhone_1kと呼ばれるExcelファイル(iPhoneを購入するウェブサイトにアクセスしたユーザーに関連する千個のエントリを)持っています。各行はウェブサイトを訪れる人であり、上記の人口統計は知られている。私は(可能ならば、私は、4の最小値を使用しますが、より多くをご紹介したいと思います)モデルの仕事をしようとしてきたし、2つの変数のみを使用し、以下のリンクを以下に頼ってきた
:
https://rpubs.com/dvorakt/144238
これらの人口統計を使用して、どの小売業者に行くかを予測できます(iPhone_1kファイルの各インスタンスでも知られています)。 3つのオプションしかありません。あなたはこれを完了する方法をアドバイスできますか?
P.S.以下はRで単純に保つために使用したデータの簡略化されたバージョンのスクリーンショットです。作業するコードを取得したら、変数とエントリの数を増やします。
ご協力いただきありがとうございます。 この設定では、与えられた属性を持つ消費者が予測と比較するのではなく、小売業者を訪問する確率を計算しているので、混乱行列はこの設定には適用されません。 –
predict()関数のパラメータで "raw"を指定するため、確率が高くなります。あなたが予測する(nB_model、test、type = "class")とすれば、どの小売業者が訪問されるのかについての実際の予測が得られます(最も高い確率で小売業者を選ぶことによって計算されます)。次に、これらの予測を使って混乱行列を利用することができます。例えば、あなたは予測データの混乱行列をテストデータに見るためにconfusionMatrix(pred、test $ Retailer)を実行できます(この関数のためのキャレットライブラリが必要です)。 –
もう一度お返事ありがとうございます。 –