Прогнозирование значений с использованием байесовской модели и получение ошибки

Файл набора данных Я предсказываю значения no_of_people, используя байесовскую модель в Python. Я использую этот набор данных, представленный на картинке. Моя ошибка также прикреплена к картинке.

      #My code is here 
import numpy as np
from pgmpy.models import BayesianModel
import pandas as pd
data = pd.read_csv('C:/Users/hp/Desktop/file3.csv')
train = data[:40]
test = data[40:].drop('no_of_people', axis=1)
restaurant_model = BayesianModel(
[('location', 'cost'),
('quality', 'cost'),
('location', 'no_of_people'),
('cost', 'no_of_people')])
restaurant_model.fit(train)
restaurant_model.get_cpds()
restaurant_model.predict(test).values.ravel()

Пожалуйста, помогите мне решить эту проблему. Как я могу точно предсказать эти значения.

1 ответ

Это ошибка pgmpy, о которой уже сообщалось в выпусках 1044 и 1110.

Обходной путь - преобразовать ваши данные в целые числа (что не идеально, я согласен ...):

      data = pd.read_csv("file3.csv", dtype=int)
model.fit(data[:40])
model.predict(data[40:].drop("no_of_person", axis=1))

[РЕДАКТИРОВАТЬ]: Действительно, на данный момент pgmpy работает только с дискретными данными. См. Здесь для получения дополнительной информации

Другие вопросы по тегам