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

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

新規登録して質問してみよう
ただいま回答率
85.31%
Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

877閲覧

ImportError(cannot import name)

yusuke_nagayama

総合スコア13

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/04/24 11:18

プログラミング初心者です。前回質問でわけのわからない事を質問していました。
いろいろ教えていただき、Pythonがいくつも入っており変な相互作用?が発生し、エラーが多発していました。

現在は新しいローカルアカウントを作成し、Anaconda Navigatorで作業をしております。
pipでずっとmoduleをinstallしていましたが、現在はcondaのみで行っています。

そんな中下記のmoduleを呼び出そうとするとエラーが発生し、どうにもならないので教えていただきたいです。

import pickle as pkl from sklearn.metrics import accuracy_score from IPython.display import Image from skater.core.explanations import Interpretation from skater.model import InMemoryModel from skater.util.logger import _INFO
--------------------------------------------------------------------------- ImportError Traceback (most recent call last) Input In [39], in <cell line: 6>() 4 from skater.core.explanations import Interpretation 5 from skater.model import InMemoryModel ----> 6 from skater.util.logger import _INFO ImportError: cannot import name '_INFO' from 'skater.util.logger' (C:\Users\nagayama0410\anaconda3\envs\python\lib\site-packages\skater\util\logger.py)

調べてみるとloggerが他にもあってエラーが起きている可能性があるということなので、logger1に名前を変えてみましたがうまくいきません。よろしくお願いいたします。

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

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

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

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

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

jbpb0

2022/04/24 14:00

import logging print(logging.INFO) は、エラーが出ずに実行できますでしょうか?
jbpb0

2022/04/24 14:03

> logger1に名前を変えてみました が、conda(やpip)でインストールしたもののディレクトリ名やファイル名を変えたという意味なら、それなりに知識がある人以外はそういうことをやってはいけません
yusuke_nagayama

2022/04/24 14:14

>それなりに知識がある人以外はそういうことをやってはいけません そんな気がしたのですぐに元に戻しました。 import logging print(logging.INFO) はエラーなく実行できました。
yusuke_nagayama

2022/04/24 14:28

ごめんなさい。内容は同じとはどういう意味でしょうか。
yusuke_nagayama

2022/04/25 15:15

ごめんなさい。 C:\Users\nagayama0410\anaconda3\envs\python\lib\site-packages\skater\util\logger.py に書かれてるpythonのコードを確認する方法がわかりません。
jbpb0

2022/04/25 16:05

たとえば、下記の手順でテキストエディットで開きます そのファイルをFinderで選択し、Macのメニューの「ファイル」→「このアプリケーションで開く」→「テキストエディット.app」を選択 または、 そのファイルをFinderで選択し、「右クリック」→「このアプリケーションで開く」→「テキストエディット.app」を選択
yusuke_nagayama

2022/04/27 13:16

これまたごめんなさい。Windowsなんです。
jbpb0

2022/04/27 14:02

失礼 ボケてました そのファイルをエクスプローラーで選択し、「右クリック」→「プログラムから開く」→「別のプログラムを選択」→「メモ帳」を選択して、「OK」をクリック 参考 https://itojisan.xyz/settings/25088/#1 の「方法1: ファイルから起動する」の「その他の形式のファイルの場合」
yusuke_nagayama

2022/04/27 14:10

ありがとうございます。 コードは """Funcs for logging""" import logging def build_logger(log_level, logger_name): logger = logging.Logger(logger_name) logger.setLevel(log_level) msg_formatter = logging.Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(message)s' ) stream_handler = logging.StreamHandler() stream_handler.setFormatter(msg_formatter) stream_handler.setFormatter(msg_formatter) logger.addHandler(stream_handler) return logger でした。
jbpb0

2022/04/27 14:44

https://github.com/oracle/Skater/blob/v1.1.2/skater/util/logger.py のコードと比べたら、足りない行がいくつかありますよね 質問のエラーは、足りない行の内の下記の行が無いのが原因です _INFO = logging.INFO 古いバージョンの https://github.com/oracle/Skater/blob/v1.1.0/skater/util/logger.py のコードと同じなので、現状でインストールされてるのが古いバージョンなのに、新しいバージョンじゃないとできないことをやろうとして、エラーになってます 質問のコードを実行したければ、「Skater」を1.1.2以降のバージョンにアップデートする必要があります
yusuke_nagayama

2022/04/28 23:53

ありがとうございます。conda install Skater==1.1.2でインストールしようとしたのですがエラーが発生しました。
yusuke_nagayama

2022/04/29 02:39

それで PackagesNotFoundError: The following packages are not available from current channels: - skater==1.1.2 Current channels: - https://repo.anaconda.com/pkgs/main/win-64 - https://repo.anaconda.com/pkgs/main/noarch - https://repo.anaconda.com/pkgs/r/win-64 - https://repo.anaconda.com/pkgs/r/noarch - https://repo.anaconda.com/pkgs/msys2/win-64 - https://repo.anaconda.com/pkgs/msys2/noarch To search for alternate channels that may provide the conda package you're looking for, navigate to https://anaconda.org and use the search bar at the top of the page. というエラーが出るんですね。この場合どうしたらよいのですか。御教示頂けると幸いです。
jbpb0

2022/04/29 09:05

from skater.util.logger import _INFO ↓ 変更 import logging _INFO = logging.INFO で、どうでしょうか?
yusuke_nagayama

2022/04/30 08:44

ありがとうございます。無事エラーが発生せずに実行できました。 大変失礼で恐縮なのですが質問させてください。これでこのmoduleは正常に使用できるのでしょうか。
yusuke_nagayama

2022/05/07 13:46

やはり正常にしようできませんでした。Tree surrogateを使用する場合は1.1.2のバージョンでなければいけないようです。 Anacondaでは使用できないので他のローカルアカウントを作成して作業を行うことにしました。 ありがとうございました。引き続きよろしくお願いいたします。
guest

回答1

0

ベストアンサー

cannot import name '_INFO' from 'skater.util.logger'

C:\Users\nagayama0410\anaconda3\envs\python\lib\site-packages\skater\util\logger.py
に下記の行が無いのが原因です

python

1_INFO = logging.INFO

上記の行は、
1.1.2
には有るけど、
1.1.0
には無いので、インストールしてるバージョンが古いのでしょう

投稿2022/05/09 06:43

jbpb0

総合スコア7658

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問