Vi em um post que o professor pediu o código que resulta em 82% de acerto, o meu acerta 82% das vezes também, segue o código:
import pandas as pd
df = pd.read_csv('dados.csv') x_df = df[['home','busca','logado']] y_df = df['comprou']
xdummies_df = pd.get_dummies(x_df)
x = xdummies_df.values y = y_df.values
tamanho_treino = round(0.9 * len(x)) tamanho_teste = len(x) - tamanho_treino
treino_dados = x[:tamanho_treino] treino_mark = y[:tamanho_treino]
teste_dados = x[-tamanho_teste:] teste_mark = y[-tamanho_teste:]
from sklearn.naive_bayes import MultinomialNB
modelo = MultinomialNB() modelo.fit(treino_dados,treino_mark)
resultado = modelo.predict(teste_dados) diferencas = resultado - teste_mark
acertos = [d for d in diferencas if d==0] total_acertos = len(acertos) total_elementos = len(teste_dados)
taxa_acerto = 100*total_acertos/total_elementos
print(taxa_acerto,'% de acerto') print(total_elementos,'casos de teste') print()