I have installed mglearn through pip command when i run the following
create a scatter matrix from the dataframe, color by y_train
pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15),
marker=’o’, hist_kwds={‘bins’: 20}, s=60,
alpha=.8, cmap=mglearn.cm3)
command i am getting an error:
pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), 6 marker=’o’, hist_kwds={‘bins’: 20}, s=60, —-> 7 alpha=.8, cmap=mglearn.cm3)
create dataframe from data in X_train
label the columns using the strings in iris_dataset.feature_names
iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names)
create a scatter matrix from the dataframe, color by y_train
pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15),
marker='o', hist_kwds={'bins': 20}, s=60,
alpha=.8, cmap=mglearn.cm3)
NameError Traceback (most recent call last)
in ()
5 pd.plotting.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15),
6 marker=’o’, hist_kwds={‘bins’: 20}, s=60,
—-> 7 alpha=.8, cmap=mglearn.cm3)
NameError: name ‘mglearn’ is not defined
For future visitors, since mglearn is jupyter specific, you have to install it in anaconda prompt using pip install mglearn
and after that only import mglearn
will work in jupyter notebook.
Memory.init() got an unexpected keyword argument ‘cachedir’
@shubham-011 it is not jupyter specific, it’s a pip-installable package, that you need to install in the same environment that your jupyter kernel runs in.
Repository owner
locked as resolved and limited conversation to collaborators
Dec 21, 2022
I try to run the following code but it gives the following error in recognistion of mglearn color map.
grr = pd.scatter_matrix( …., cmap=mglearn.cm3)
ErrorName: name ‘mglearn’ is not defined
I should add pd is Anaconda Pandas package imported as pd but does not recognize the color map mglearn.cm3
Any suggestions?
asked Nov 30, 2016 at 0:36
3
Open Anaconda prompt and execute pip install mglearn
After that just import mglearn
import pandas as pd
import mglearn
iris_dataframe = pd.DataFrame(X_train, columns=iris_dataset.feature_names)
grr = pd.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), marker='o',s=60, alpha=0.8, hist_kwds={'bins': 10},cmap=mglearn.cm3)
answered Jan 24, 2019 at 20:04
Concerns the code for the book — Introduction to Machine Learning with Python
- At the top of the Code for the book (notebooks, etc.) there is a package folder named — mglearn. It contains, as its fist .py file — init.py.
- It therefore allowed me to simply copy/paste the folder — mglearn, into my
C:UsersErnestoAnaconda3 folder and afterwards type — import mglearn — in my Spyder 3.5 editor. -
Then the line:
grr = pd.scatter_matrix(iris_dataframe, c=y_train, figsize=(15, 15), marker='o', hist_kwds={'bins': 20}, s=60, alpha=0.8, cmap=mglearn.cm3)
prints the scatter_matrix just as in the book.
zhon
1,6101 gold badge22 silver badges31 bronze badges
answered Dec 11, 2016 at 21:18
- conda install pip(because conda install mglearn will give a error)
- pip install mglearn
- grr = pd.plotting.scatter_matrix( …., cmap=mglearn.cm3)
if you still can’t see the output then you might have missed%matplotlib inline
answered Mar 26, 2020 at 18:03
You need to install mglearn
package. You can do that by running the below command in your Command Prompt or in the terminal (Anaconda/ any other IDE that has support for Terminal).
pip install mglearn
For more details on mglearn package visit: enter link description here
answered Aug 23, 2020 at 18:48
if you are working in jupyter notebook just use cmap=’PuBu’ in scatter_matrix()
answered Nov 28, 2022 at 3:14
1
If you make a brief conclusion, you can use the jupyter notebook (other than that).mglearn
When using!pip install mglearn
and install it.import mglearn
should be imported.
However,mglearn
How to importimport mglearn
There is another method other than explicitly. In Python, we use another method.
02-supervised-learning Just open this in Jupyter Notebook X, y = mglearn.datasets.make_forge()
It may seem to work when you hit.
%matplotlib inline
from preamble import *
generate dataset
X, y = mglearn.datasets.make_forge()
However,preamble.py
The following code:
from IPython.display import set_matplotlib_formats, display
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import mglearn
中略
all = ['np', 'mglearn', 'display', 'plt', 'pd']
from preamble import *
andall
The module is imported.from preamble import
It is disliked because it takes time to process and side effects.all
The problem can be solved by specifying the imported module. https://docs.python.jp/3/tutorial/modules.html#importing-from-a-package
MoreYou should avoid using this code because it is readable, and this question is confusing, but it is useful to use it to reduce the amount of key types in the interactive session as in the tutorial. Tutorial https://docs.python.org/ja/3/tutorial/modules.html#more-on-modules
Jupyter Notebookmglearn
When usingpandas
,numpy
,matplotlib
Because it is important to input it every time,preamble.py
copy to the current directoryfrom preamble import *
By doing so, you can save time of input. If a copy of the file is not useful,preamble.py
Copy the contents and paste it into the cell of Jupyter Notebook.
More https://github.com/amueller/introduction_to_ml_with_python If you want to download and use the file (.ipynb) of the Jupyter Notebook,mglearn
No need to install. Why?mglearn
The source code is in there. If you use it in other places,mglearn
Homepip
should be installed.
NameError — одна из самых распространенных ошибок в Python. Начинающих она может пугать, но в ней нет ничего сложного. Это ошибка говорит о том, что вы попробовали использовать переменную, которой не существует.
В этом руководстве поговорим об ошибке «NameError name is not defined». Разберем несколько примеров и разберемся, как эту ошибку решать.
NameError возникает в тех случаях, когда вы пытаетесь использовать несуществующие имя переменной или функции.
В Python код запускается сверху вниз. Это значит, что переменную нельзя объявить уже после того, как она была использована. Python просто не будет знать о ее существовании.
Самая распространенная NameError
выглядит вот так:
NameError: name 'some_name' is not defined
Разберем частые причина возникновения этой ошибки.
Причина №1: ошибка в написании имени переменной или функции
Для человека достаточно просто сделать опечатку. Также просто для него — найти ее. Но это не настолько просто для Python.
Язык способен интерпретировать только те имена, которые были введены корректно. Именно поэтому важно следить за правильностью ввода всех имен в коде.
Если ошибку не исправить, то возникнет исключение. Возьмем в качестве примера следующий код:
books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
print(boooks)
Он вернет:
Traceback (most recent call last):
File "main.py", line 3, in
print(boooks)
NameError: name 'boooks' is not defined
Для решения проблемы опечатку нужно исправить. Если ввести print(books)
, то код вернет список книг.
Таким образом при возникновении ошибки с именем в первую очередь нужно проверить, что все имена переменных и функций введены верно.
Причина №2: вызов функции до объявления
Функции должны использоваться после объявления по аналогии с переменными. Это связано с тем, что Python читает код сверху вниз.
Напишем программу, которая вызывает функцию до объявления:
books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
print_books(books)
def print_books(books):
for b in books:
print(b)
Код вернет:
Traceback (most recent call last):
File "main.py", line 3, in
print_books(books)
NameError: name 'print_books' is not defined
На 3 строке мы пытаемся вызвать print_books()
. Однако эта функция объявляется позже.
Чтобы исправить эту ошибку, нужно перенести функцию выше:
def print_books(books):
for b in books:
print(b)
books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
print_books(books)
Причина №3: переменная не объявлена
Программы становятся больше, и порой легко забыть определить переменную. В таком случае возникнет ошибка. Причина в том, что Python не способен работать с необъявленными переменными.
Посмотрим на программу, которая выводит список книг:
Такой код вернет:
Traceback (most recent call last):
File "main.py", line 1, in
for b in books:
NameError: name 'books' is not defined
Переменная books
объявлена не была.
Для решения проблемы переменную нужно объявить в коде:
books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
for b in books:
print(b)
Причина №4: попытка вывести одно слово
Чтобы вывести одно слово, нужно заключить его в двойные скобки. Таким образом мы сообщаем Python, что это строка. Если этого не сделать, язык будет считать, что это часть программы. Рассмотрим такую инструкцию print()
:
Этот код пытается вывести слово «Books» в консоль. Вместо этого он вернет ошибку:
Traceback (most recent call last):
File "main.py", line 1, in
print(Books)
NameError: name 'Books' is not defined
Python воспринимает «Books» как имя переменной. Для решения проблемы нужно заключить имя в скобки:
Теперь Python знает, что нужно вывести в консоли строку, и код возвращает Books
.
Причина №5: объявление переменной вне области видимости
Есть две области видимости переменных: локальная и глобальная. Локальные переменные доступны внутри функций или классов, где они были объявлены. Глобальные переменные доступны во всей программе.
Если попытаться получить доступ к локальной переменной вне ее области видимости, то возникнет ошибка.
Следующий код пытается вывести список книг вместе с их общим количеством:
def print_books():
books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
for b in books:
print(b)
print(len(books))
Код возвращает:
Traceback (most recent call last):
File "main.py", line 5, in
print(len(books))
NameError: name 'books' is not defined
Переменная books
была объявлена, но она была объявлена внутри функции print_books()
. Это значит, что получить к ней доступ нельзя в остальной части программы.
Для решения этой проблемы нужно объявить переменную в глобальной области видимости:
books = ["Near Dark", "The Order", "Where the Crawdads Sing"]
def print_books():
for b in books:
print(b)
print(len(books))
Код выводит название каждой книги из списка books
. После этого выводится общее количество книг в списке с помощью метода len()
.
Что я делаю не так?
Устанавливаю библиотеку через jupyter !pip install mglearn
Потом
import mglearn
И выскакивает вот такая ошибка:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-2-26a0454c3f6e> in <module>
----> 1 import mglearn
~anaconda3libsite-packagesmglearn__init__.py in <module>
----> 1 from . import plots
2 from . import tools
3 from .plots import cm3, cm2
4 from .tools import discrete_scatter
5 from .plot_helpers import ReBl
~anaconda3libsite-packagesmglearnplots.py in <module>
----> 1 from .plot_linear_svc_regularization import plot_linear_svc_regularization
2 from .plot_interactive_tree import plot_tree_progressive, plot_tree_partition
3 from .plot_animal_tree import plot_animal_tree
4 from .plot_rbf_svm_parameters import plot_svm
5 from .plot_knn_regression import plot_knn_regression
~anaconda3libsite-packagesmglearnplot_linear_svc_regularization.py in <module>
1 import matplotlib.pyplot as plt
2 import numpy as np
----> 3 from sklearn.svm import LinearSVC
4 from sklearn.datasets import make_blobs
5
~anaconda3libsite-packagessklearn__init__.py in <module>
78 from . import _distributor_init # noqa: F401
79 from . import __check_build # noqa: F401
---> 80 from .base import clone
81 from .utils._show_versions import show_versions
82
~anaconda3libsite-packagessklearnbase.py in <module>
19 from . import __version__
20 from ._config import get_config
---> 21 from .utils import _IS_32BIT
22 from .utils.validation import check_X_y
23 from .utils.validation import check_array
~anaconda3libsite-packagessklearnutils__init__.py in <module>
21
22 from .murmurhash import murmurhash3_32
---> 23 from .class_weight import compute_class_weight, compute_sample_weight
24 from . import _joblib
25 from ..exceptions import DataConversionWarning
~anaconda3libsite-packagessklearnutilsclass_weight.py in <module>
5 import numpy as np
6
----> 7 from .validation import _deprecate_positional_args
8
9
~anaconda3libsite-packagessklearnutilsvalidation.py in <module>
23 from contextlib import suppress
24
---> 25 from .fixes import _object_dtype_isnan, parse_version
26 from .. import get_config as _get_config
27 from ..exceptions import NonBLASDotWarning, PositiveSpectrumWarning
~anaconda3libsite-packagessklearnutilsfixes.py in <module>
16 import scipy.sparse as sp
17 import scipy
---> 18 import scipy.stats
19 from scipy.sparse.linalg import lsqr as sparse_lsqr # noqa
20 from numpy.ma import MaskedArray as _MaskedArray # TODO: remove in 0.25
~anaconda3libsite-packagesscipystats__init__.py in <module>
386
387 """
--> 388 from .stats import *
389 from .distributions import *
390 from .morestats import *
~anaconda3libsite-packagesscipystatsstats.py in <module>
178 import scipy.special as special
179 from scipy import linalg
--> 180 from . import distributions
181 from . import mstats_basic
182 from ._stats_mstats_common import (_find_repeats, linregress, theilslopes,
~anaconda3libsite-packagesscipystatsdistributions.py in <module>
6 # instead of `git blame -Lxxx,+x`.
7 #
----> 8 from ._distn_infrastructure import (entropy, rv_discrete, rv_continuous,
9 rv_frozen)
10
~anaconda3libsite-packagesscipystats_distn_infrastructure.py in <module>
21
22 # for root finding for continuous distribution ppf, and max likelihood estimation
---> 23 from scipy import optimize
24
25 # for functions of continuous distributions (e.g. moments, entropy, cdf)
~anaconda3libsite-packagesscipyoptimize__init__.py in <module>
385 """
386
--> 387 from .optimize import *
388 from ._minimize import *
389 from ._root import *
~anaconda3libsite-packagesscipyoptimizeoptimize.py in <module>
34 line_search_wolfe2 as line_search,
35 LineSearchWarning)
---> 36 from ._numdiff import approx_derivative
37 from scipy._lib._util import getfullargspec_no_self as _getfullargspec
38 from scipy._lib._util import MapWrapper
~anaconda3libsite-packagesscipyoptimize_numdiff.py in <module>
4 from numpy.linalg import norm
5
----> 6 from scipy.sparse.linalg import LinearOperator
7 from ..sparse import issparse, csc_matrix, csr_matrix, coo_matrix, find
8 from ._group_columns import group_dense, group_sparse
~anaconda3libsite-packagesscipysparselinalg__init__.py in <module>
112 from .dsolve import *
113 from .interface import *
--> 114 from .eigen import *
115 from .matfuncs import *
116 from ._onenormest import *
~anaconda3libsite-packagesscipysparselinalgeigen__init__.py in <module>
7
8 """
----> 9 from .arpack import *
10 from .lobpcg import *
11
~anaconda3libsite-packagesscipysparselinalgeigenarpack__init__.py in <module>
18
19 """
---> 20 from .arpack import *
~anaconda3libsite-packagesscipysparselinalgeigenarpackarpack.py in <module>
41 __all__ = ['eigs', 'eigsh', 'svds', 'ArpackError', 'ArpackNoConvergence']
42
---> 43 from . import _arpack
44 arpack_int = _arpack.timing.nbx.dtype
45
ImportError: DLL load failed while importing _arpack: Не найдена указанная процедура.