How do you fix "runtimeError: package fails to pass a sanity check" for numpy and pandas?

PythonPython 3.xWindowsNumpy

Python Problem Overview


This is the error I am getting and, as far as I can tell, there is nothing useful on the error link to fix this.

> RuntimeError: The current Numpy installation > ('...\\venv\\lib\\site-packages\\numpy\\__init__.py') fails to pass a > sanity check due to a bug in the windows runtime.

See this issue for more information: https://developercommunity.visualstudio.com/content/problem/1207405/fmod-after-an-update-to-windows-2004-is-causing-a.html

I have tried multiple versions of Python (3.8.6 and 3.9.0) and numpy and pandas. I am currently using PyCharm to do all this.

Python Solutions


Solution 1 - Python

This error occurs when using python3.9 and numpy1.19.4 So uninstalling numpy1.19.4 and installing 1.19.3 will work.


Edit

As of January 5th 2021 numpy version 1.19.5 is out and appears to solve the problem.

Solution 2 - Python

I am using Python 3.7, anyway the same solution suggested here helped me.

pip install numpy==1.19.3

Actually the link informed https://developercommunity.visualstudio.com/content/problem/1207405/fmod-after-an-update-to-windows-2004-is-causing-a.html shows the given solution. It seems to be a bug in Visual Studio, which remains unsolved up to this date.

Solution 3 - Python

Just install numpy==1.19.3 I am using python 3.9

Solution 4 - Python

As per the discussion on the link you provided, a numpy dev answered:

> NumPy has released a bugfix 1.19.3 to work around this issue. The > bugfix broke something else on Linux, so we had to revert the fix in > release 1.19.4, but you can still install the 1.19.3 via pip install > numpy==1.19.3.

So, if you need requirements that work for both Linux and Windows, you'll need to use PEP508:

numpy==1.19.3; platform_system == "Windows"
numpy>=1.19.4; platform_system == "linux"

Solution 5 - Python

It's a bug of numpy 1.19.4 that fails with all python versions. Use the previous version to solve the problem, so by terminal:

pip install numpy==1.19.3

Solution 6 - Python

Rolling back to numpy 1.19.3 worked for me on python 3.8.6

Solution 7 - Python

The workaround is provided in the link mentioned in question.

The developer mattip mentions below in the workaround suggested by him:

  1. Uninstall numpy.( Most probably it's 1.19.4)
  2. pip install numpy==1.19.3

This worked for me.

My configuration:OS-Win10,Anaconda Distribution,python=3.7

Solution 8 - Python

Why hasn't anyone posted the difference between 1.19.3 and 1.19.4.

The problematic numpy init code is:

def _win_os_check():
    """
    Quick Sanity check for Windows OS: look for fmod bug issue 16744.
    """
    try:
        a = arange(13 * 13, dtype= float64).reshape(13, 13)
        a = a % 17  # calls fmod
        linalg.eig(a)
    except Exception:
        msg = ("The current Numpy installation ({!r}) fails to "
                "pass a sanity check due to a bug in the windows runtime. "
                "See this issue for more information: "
                "https://developercommunity.visualstudio.com/content/problem/1207405/fmod-after-an-update-to-windows-2004-is-causing-a.html")
        raise RuntimeError(msg.format(__file__)) from None

if sys.platform == "win32" and sys.maxsize > 2**32:
    _win_os_check()

del _win_os_check

This code section doesn't exist in 1.19.3; that's the only difference.

Solution 9 - Python

I had to follow below steps to fix this error as everyone else has suggested above.

My environment details: Windows 10 64 bit, with Python 3.9.0 installed. I have installed pip 20.3.1

pip uninstall numpy
pip install numpy==1.19.3

I am posting my powershell command line output for your reference(may be useful to someone).

PS C:\Users\XXXX> pip uninstall numpy

Found existing installation: numpy 1.19.4

Uninstalling numpy-1.19.4:

Would remove:

c:\python39\lib\site-packages\numpy-1.19.4.dist-info\*

c:\python39\lib\site-packages\numpy\*

c:\python39\scripts\f2py.exe

Proceed (y/n)? y

Successfully uninstalled numpy-1.19.4

PS C:\Users\XXXX> pip install numpy==1.19.3

Collecting numpy==1.19.3

Downloading numpy-1.19.3-cp39-cp39-win_amd64.whl (13.3 MB)

 |████████████████████████████████| 13.3 MB 6.4 MB/s

Installing collected packages: numpy

Successfully installed numpy-1.19.3

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionReed CollinsView Question on Stackoverflow
Solution 1 - PythonŚãmiķšha ŔånjaňView Answer on Stackoverflow
Solution 2 - PythonFabio Mendes SoaresView Answer on Stackoverflow
Solution 3 - PythonDipesh PaulView Answer on Stackoverflow
Solution 4 - PythonPierre.SassoulasView Answer on Stackoverflow
Solution 5 - PythonMorganaView Answer on Stackoverflow
Solution 6 - PythonMalcolm DumoulinView Answer on Stackoverflow
Solution 7 - PythonVikramView Answer on Stackoverflow
Solution 8 - PythonAvyView Answer on Stackoverflow
Solution 9 - PythonChinmay TView Answer on Stackoverflow