AttributeError: 'module' object (scipy) has no attribute 'misc'

Question:

I updated from ubuntu 12.04 to ubuntu 12.10 and the python module I have written suddenly no longer works with the error message that the module scipy does not have the attribute ‘misc’. This worked previously. I am still using python 2.7 after the update. Here is where the code crashes

import scipy
scipy.misc.imsave(slice,dat)

Any ideas?

Asked By: moadeep

||

Answers:

>>> import scipy
>>> scipy.misc
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'misc'
>>> 
>>> 
>>> import scipy.misc
>>> scipy.misc.imsave
<function imsave at 0x19cfa28>
>>>

Which seems to be quite common with scipy.

Answered By: ev-br

Because you cannot directly use the misc module from scipy without explicitly import it. Here is the way of loading scipy.misc:

import scipy.misc

#Load the Lena image into an array, (yes scipy does have a lena function)
lena = scipy.misc.lena()
...
Answered By: Jim Raynor
  1. You need to explicitly import scipy.misc as:

    import scipy.misc

  2. You need to install the package pillow (formerly known as PIL), if not already installed. For image manipulation functions of scipy.misc such as imread() or imsave() to function correctly, pillow has to be installed.
    To verify, either run your code again or type the below command:

    scipy.misc.imread

Answered By: Jim C

imread is depreciated after version 1.2.0 !
So to solve the problem I had to install 1.1.0 version.

 pip install scipy==1.1.0
Answered By: mahbubcseju

I had a similar problem. In my case, I was trying to import comb from scipy.misc, which had been depreciated in scipy 1.0.0 (see ref here). Thus, I was inevitabely getting AttributeError: module 'scipy.misc' has no attribute 'comb'.

Replacing scipy.misc.comb with scipy.special.comb fixed the issue.

Answered By: Stefan Petrescu
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.