質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

0回答

1877閲覧

Python DistributionNotFoundエラーの発生理由

okayanyan

総合スコア10

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/06/14 02:28

編集2019/06/14 04:20

DistributionNotFoundエラーが出るスクリプトと出ないスクリプトがあります。

Pythonでベイジアンモデリングをしているのですが、
同じ仮想環境を使っているにも関わらず、
PyMCのimport時にエラーが出るスクリプトと出ないスクリプトがあります。
原因がさっぱりわからないため、なにか原因になりそうな要因があれば教えていただきたいです。

発生している問題・エラーメッセージ

Traceback (most recent call last): File "<string>", line 1, in <module> File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 105, in spawn_main exitcode = _main(fd) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 114, in _main prepare(preparation_data) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 225, in prepare _fixup_main_from_path(data['init_main_from_path']) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\multiprocessing\spawn.py", line 277, in _fixup_main_from_path run_name="__mp_main__") File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 263, in run_path pkg_name=pkg_name, script_name=fname) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 96, in _run_module_code mod_name, mod_spec, pkg_name, script_name) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\runpy.py", line 85, in _run_code exec(code, run_globals) File "C:\work_folder\01.Python\99_test\04_test_script_37\test_mcmc.py", line 17, in <module> import pymc3 as pm File "C:\work_folder\01.Python\_env\venv_ML37\lib\site-packages\pymc3\__init__.py", line 11, in <module> from .stats import * File "C:\work_folder\01.Python\_env\venv_ML37\lib\site-packages\pymc3\stats.py", line 22, in <module> if pkg_resources.get_distribution('scipy').version < '1.0.0': File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\site-packages\pkg_resources\__init__.py", line 481, in get_distribution dist = get_provider(dist) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\site-packages\pkg_resources\__init__.py", line 357, in get_provider return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0] File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\site-packages\pkg_resources\__init__.py", line 900, in require needed = self.resolve(parse_requirements(requirements)) File "C:\Users\okayan\AppData\Local\Programs\Python\Python37\lib\site-packages\pkg_resources\__init__.py", line 786, in resolve raise DistributionNotFound(req, requirers) pkg_resources.DistributionNotFound: The 'scipy' distribution was not found and is required by the application

該当のソースコード

Python

1# errorなし 2import numpy as np 3import pandas as pd 4import matplotlib.pyplot as plt 5import seaborn 6from sklearn.model_selection import train_test_split 7from sklearn.linear_model import LinearRegression 8import pymc3 as pm 9 10# errorあり 11import os 12import numpy as np 13import pandas as pd 14import matplotlib.pyplot as plt 15import seaborn as sns 16from sklearn.linear_model import LinearRegression 17from sklearn.linear_model import Ridge 18from sklearn.model_selection import GridSearchCV 19from sklearn.ensemble import RandomForestRegressor 20from sklearn.model_selection import train_test_split 21from sklearn import tree 22from sklearn.externals.six import StringIO 23import pydotplus 24import warnings 25import script.fcn_error as err # original script 26import pymc3 as pm

試したこと

  • 環境変数の確認(別プロジェクト時)

 ⇒結果は変わらず。環境変数もプロジェクト間で差異はなく、下の作業で関係がないことは確認。

  • 上記インポートをしている2種類のスクリプトを同じプロジェクトで動かしてみた。

 (最初のエラー出現時は別プロジェクトで同じ仮想環境を使用していた)
⇒結果は変わらず。

  • 各パッケージのupgrade
    ⇒効果は変わらず。
  • pymc3/stats.pyの'pkg_resources.get_distribution('scipy').version'を自分のscipyにする。

 ⇒とりあえず動かせるようにはなった。だが、根本原因はまだわかっていない。

補足情報(FW/ツールのバージョンなど)

インタープリター/パッケージ
python 3.7.3
PyMC3 3.7
scipy 1.3.0

IDE
pycharm 2018.3

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hayataka2049

2019/06/14 02:43

可能であればエラーは全体を示してください(Tracebackから)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問