win10,python 3.8.10 . conda
pytho3.6 不OK,因为会有from future import annotations,,,
所以做了新镜像 conda create --name kats python=3.8
如果直接安装kats会有问题:
其中主要为ERROR: Failed building wheel for fbprophet
因此先进行fbprophet安装,其中需要首先按照pystan,采用conda 安装
正确教程:
首先创建一个新环境
pycharm–>setting–> conda environment(new environment -->python3.8/3.7)
python -m pip install -U pip
conda install -c conda-forge pystan
pip install fbprophet
以上执行后会有部分报错:ERROR: Failed building wheel for fbprophet
解决方案:https://stackoverflow.com/questions/49889404/fbprophet-installation-error-failed-building-wheel-for-fbprophet
Then the following steps shall work:
On Prompt install Ephem:
conda install -c anaconda ephem
Install Pystan:
conda install -c conda-forge pystan
Finally install Fbprophet:
conda install -c conda-forge fbprophet
If exists error from holidays package
pip install holidays==0.9.12
Reference: https://github.com/facebook/prophet/issues/892
Reference for Holiday package error: https://github.com/facebook/prophet/issues/1300
安装完成done,但是依赖库中文件有缺失,然后将github上kats文件中源代码放入所在依赖库
之后运行kats案例:
import pandas as pd
# import os
# os.add_dll_directory(r'E:\anaconda3\envs\Kats')
from kats.consts import TimeSeriesData
from kats.models.prophet import ProphetModel, ProphetParams
# take `air_passengers` data as an example
air_passengers_df = pd.read_csv(
"air_passengers.csv",
header=0,
names=["time", "passengers"],
)
# convert to TimeSeriesData object
air_passengers_ts = TimeSeriesData(air_passengers_df)
# create a model param instance
params = ProphetParams(seasonality_mode='multiplicative') # additive mode gives worse results
# create a prophet model instance
m = ProphetModel(air_passengers_ts, params)
# fit model simply by calling m.fit()
m.fit()
# make prediction for next 30 month
fcst = m.predict(steps=30, freq="MS")
报错:FileNotFoundError: Could not find module ‘xxx.dll’. Try using the full path with constructor syntax.
详情:
Traceback (most recent call last):
File "E:/coder/GFHealthEval/main.py", line 4, in <module>
from kats.consts import TimeSeriesData
File "E:\anaconda3\envs\Kats\lib\site-packages\kats\__init__.py", line 2, in <module>
from . import utils # noqa
File "E:\anaconda3\envs\Kats\lib\site-packages\kats\utils\__init__.py", line 3, in <module>
from . import decomposition # noqa
File "E:\anaconda3\envs\Kats\lib\site-packages\kats\utils\decomposition.py", line 13, in <module>
from statsmodels.tsa.seasonal import STL, seasonal_decompose
File "E:\anaconda3\envs\Kats\lib\site-packages\statsmodels\tsa\__init__.py", line 1, in <module>
from statsmodels.tools._testing import PytestTester
File "E:\anaconda3\envs\Kats\lib\site-packages\statsmodels\tools\__init__.py", line 1, in <module>
from .tools import add_constant, categorical
File "E:\anaconda3\envs\Kats\lib\site-packages\statsmodels\tools\tools.py", line 7, in <module>
import scipy.linalg
File "E:\anaconda3\envs\Kats\lib\site-packages\scipy\__init__.py", line 136, in <module>
from . import _distributor_init
File "E:\anaconda3\envs\Kats\lib\site-packages\scipy\_distributor_init.py", line 59, in <module>
WinDLL(os.path.abspath(filename))
☆☆☆☆☆File "E:\anaconda3\envs\Kats\lib\ctypes\__init__.py", line 373, in __init__
☆☆☆☆☆☆☆☆ self._handle = _dlopen(self._name, mode)——————————————————————————————————————————重要☆☆☆☆☆☆☆☆☆
FileNotFoundError: Could not find module 'E:\anaconda3\envs\Kats\lib\site-packages\scipy\.libs\libbanded5x.UGR6EUQPIWHQH7SL62IWIXB5545VDNQZ.gfortran-win_amd64.dll' (or one of its dependencies). Try using the full path with constructor syntax.
点击进入☆☆☆☆☆文件夹:init__.py 第342行:
def __init__(self, name, mode=DEFAULT_MODE, handle=None,
use_errno=False,
use_last_error=False,
winmode=None):#将None,修改为0 再运行即可。
修改后,再运行实例程序,即可运行
安装一下jupyter notebook环境
更新完,可以重启下pycharm
三、可能会遇到的问题
- [WinError 5]拒绝访问
如果出现拒绝访问,如以下错误:这里点题了 喔!
解决方法:添加 --user选项赋予权限就可以搞定。
python -m pip install --upgrade pip -i https://pypi.douban.com/simple --user
参考:
https://blog.csdn.net/shixin_0125/article/details/104018446
https://blog.csdn.net/weixin_43939159/article/details/109165715