Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Conda downgrade numpy version

I need to downgrade numpy version:

python -c "import numpy; print(numpy.__version__)"
1.16.4

conda install numpy==1.14.3

Collecting package metadata (current_repodata.json): done
Solving environment: failed with current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed
Initial quick solve with frozen env failed.  Unfreezing env and trying again.
Solving environment: failed

UnsatisfiableError: The following specifications were found to be incompatible with a past
explicit spec that is not an explicit spec in this operation (numpy):

  - numpy==1.14.3

The following specifications were found to be incompatible with each other:



Package numpy-base conflicts for:
mkl_random -> numpy[version='>=1.11.3,<2.0a0'] -> mkl_fft[version='>=1.0.6,<2.0a0'] -> numpy-base[version='>=1.0.6,<2.0a0']
mkl_fft -> numpy[version='>=1.11.3,<2.0a0'] -> mkl_random[version='>=1.0.2,<2.0a0'] -> numpy-base[version='>=1.0.2,<2.0a0']
numpy-base
pytorch==1.1.0 -> numpy[version='>=1.11.3,<2.0a0'] -> mkl_random[version='>=1.0.2,<2.0a0'] -> numpy-base[version='>=1.0.2,<2.0a0']
numpy==1.14.3 -> mkl_random[version='>=1.0.2,<2.0a0'] -> numpy-base[version='>=1.0.2,<2.0a0']
Package numpy conflicts for:
mkl_fft -> numpy[version='>=1.11.3,<2.0a0']
mkl_random -> numpy[version='>=1.11.3,<2.0a0']
pytorch==1.1.0 -> numpy[version='>=1.11.3,<2.0a0']

Not sure why this happens numpy==1.14.3 is in range numpy[version='>=1.11.3,<2.0a0'], how to fix it?

Update:

Uninstalling via conda uninstall numpy-base will delete other packages which is not desirable:

conda uninstall numpy-base
Collecting package metadata (repodata.json): done
Solving environment: done

  removed specs:
    - numpy-base


The following packages will be REMOVED:

  blas-1.0-mkl
  cffi-1.12.3-py36h2e261b9_0
  cudatoolkit-10.0.130-0
  cudnn-7.6.0-cuda10.0_0
  intel-openmp-2019.4-243
  libgfortran-ng-7.3.0-hdf63c60_0
  mkl-2019.4-243
  mkl-service-2.0.2-py36h7b6447c_0
  mkl_fft-1.0.14-py36ha843d7b_0
  mkl_random-1.0.2-py36hd81dba3_0
  ninja-1.9.0-py36hfd86e86_0
  numpy-1.16.4-py36h7e9f1db_0
  numpy-base-1.16.4-py36hde5b4d6_0
  pycparser-2.19-py36_0
  pytorch-1.1.0-cuda100py36he554f03_0
  six-1.12.0-py36_0
like image 559
mrgloom Avatar asked Aug 22 '19 12:08

mrgloom


People also ask

How do I know my NumPy version?

How to check the Numpy version. To check a numpy version, write the numpy. __version__ code and run the file. It will return the current version of numpy installed on your machine.


2 Answers

You could simply install the correct version using the command

conda install -c conda-forge numpy=1.16.4

conda will automatically take care of downgrading to your version correctly

like image 119
Vasu Bansal Avatar answered Nov 16 '22 02:11

Vasu Bansal


If downgrading to an specific version of numpy takes forever while conda is solving the environment, or conda is unable to resolve the conflicts, you can use conda-tree to inspect the dependences and then manually uninstall with conda (or attempt to downgrade) the incompatible packages. However note that creating a new environment with the correct numpy version could be faster if there are many dependences (you may use mamba to speed up the process).

conda install -c conda-forge conda-tree
conda-tree whoneeds -t numpy

This will display a tree with the supported numpy versions for each dependent package:

numpy==1.20.3
  ├─ h5py 3.2.1 [required: >=1.16.6,<2.0a0]
  │  └─ tensorflow-base 2.5.0 [required: >=3.1.0]
  │     └─ tensorflow 2.5.0 [required: 2.5.0, gpu_py37hb3da07e_0]
  │        └─ tensorflow-gpu 2.5.0 [required: 2.5.0]
  ├─ keras-preprocessing 1.1.2 [required: >=1.9.1]
  │  └─ tensorflow-base 2.5.0 [required: >=1.1.2]
  │     └─ dependent packages of tensorflow-base displayed above
  ├─ matplotlib-base 3.4.2 [required: >=1.17.5,<2.0a0]
  │  └─ matplotlib 3.4.2 [required: >=3.4.2,<3.4.3.0a0]
  ├─ opt_einsum 3.3.0 [required: any]
  │  └─ tensorflow-base 2.5.0 [required: 3.3.0.*]
  │     └─ dependent packages of tensorflow-base displayed above
  ├─ pandas 1.2.5 [required: >=1.20.2,<2.0a0]
  │  └─ statsmodels 0.12.2 [required: >=0.21]
  ├─ patsy 0.5.1 [required: >=1.4.0]
  │  └─ statsmodels 0.12.2 [required: >=0.5.1]
  ├─ scipy 1.6.2 [required: >=1.16.6,<2.0a0]
  │  ├─ keras-preprocessing 1.1.2 [required: >=0.14]
  │  │  └─ dependent packages of keras-preprocessing displayed above
  │  ├─ patsy 0.5.1 [required: any]
  │  │  └─ dependent packages of patsy displayed above
  │  ├─ statsmodels 0.12.2 [required: >=1.0]
  │  └─ tensorflow-base 2.5.0 [required: >=1.6.2]
  │     └─ dependent packages of tensorflow-base displayed above
  ├─ statsmodels 0.12.2 [required: >=1.17.0,<2.0a0]
  ├─ tensorboard 2.5.0 [required: >=1.12.0]
  │  ├─ tensorflow 2.5.0 [required: >=2.5.0]
  │  │  └─ dependent packages of tensorflow displayed above
  │  └─ tensorflow-base 2.5.0 [required: >=2.5.0,<2.6]
  │     └─ dependent packages of tensorflow-base displayed above
  ├─ tensorflow-base 2.5.0 [required: >=1.20]
  │  └─ dependent packages of tensorflow-base displayed above
  └─ tensorflow-estimator 2.5.0 [required: >=1.16.1]
     ├─ tensorflow 2.5.0 [required: >=2.5.0]
     │  └─ dependent packages of tensorflow displayed above
     └─ tensorflow-base 2.5.0 [required: >=2.5.0,<2.6]
        └─ dependent packages of tensorflow-base displayed above
like image 34
ggf31416 Avatar answered Nov 16 '22 01:11

ggf31416