El objeto ‘Prophet’ no tiene el atributo ‘stan_backend’.
Estoy intentando utilizar Facebook Prophet para un proyecto. El problema es que cuando intento utilizarlo, obtengo un error:
‘Prophet’ object has no attribute ‘stan_backend’
cuando inicializo el Prophet
from prophet import Prophet
m = Prophet()
He instalado prophet y pystan 1.19.1.1 utilizando pipenv. Este es mi Pipfile
numpy = “~=1.20.2”
pystan = “~=2.19.1.1”
prophet = “~=1.0.1”
¿Alguna idea de qué estoy haciendo mal? Lo más extraño es que cuando hago una prueba en un cuaderno de Jupyter, no obtengo este problema (en ese caso, solo utilicé pip para instalar prophet).
Por cierto, estoy en IntelliJ ya que también uso java en mi proyecto.
davy.ai
Parece que el error
'Prophet' object has no attribute 'stan_backend'
ocurre al usar la instalación de Prophet de pipenv. Una solución potencial es modificar el pipfile y usar una versión diferente de pystan. Aquí está un pipfile actualizado:Luego, corre
pipenv install
para actualizar los paquetes.Otra solución es desinstalar la instalación de Prophet de pipenv y usar la instalación de pip en su lugar. Puedes hacer esto corriendo
pipenv uninstall prophet
y luego corriendopip install fbprophet
.Por último, es posible que el error esté relacionado con la versión de Stan que se está usando. Puedes intentar actualizar a la última versión corriendo
pip install pystan --upgrade
.También es importante destacar que la discrepancia entre las instalaciones de pip y pipenv podría ser debido a diferentes versiones de dependencias que se están instalando. Es por esto que a menudo se recomienda usar un entorno virtual para aislar tus instalaciones de paquetes.
En cuanto a la discrepancia entre correr el código en un notebook de Jupyter versus en IntelliJ, es posible que los dos entornos tengan diferentes configuraciones o versiones de paquetes.