103

When I try to uninstall pandas from my conda virtual env, I see that it tries to uninstall more packages as well:

$ conda uninstall pandas
Using Anaconda Cloud api site https://api.anaconda.org
Fetching package metadata: ....
Solving package specifications: .........

Package plan for package removal in environment /Users/amelio/anaconda/envs/py35:

The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    dask-0.7.6                 |           py35_0         276 KB

The following packages will be REMOVED:

    blaze:       0.10.1-py35_0
    odo:         0.5.0-py35_1
    pandas:      0.18.1-np111py35_0
    seaborn:     0.7.0-py35_0
    statsmodels: 0.6.1-np111py35_1

The following packages will be DOWNGRADED:

    dask:        0.10.1-py35_0      --> 0.7.6-py35_0

Proceed ([y]/n)?

I would like to uninstall pandas only and not have anything else downgraded.

I understand that there these packages have dependencies to pandas and even to specific versions of pandas, but is this even possible at all with conda?

Partial motivation

My understanding is that it isn't that easy to install a package from GitHub using conda. At least it isn't as easy as using a one-liner as one can do with pip.

Since I want to use the version in master, my plan is to uninstall the conda version and use pip to install pandas from master on the official repo GitHub.

How can I do this?

Community
  • 1
  • 1
Amelio Vazquez-Reina
  • 91,494
  • 132
  • 359
  • 564
  • 3
    a simple solution would be to just pip install the new version from master over conda's version. – cel Jul 19 '16 at 13:13

1 Answers1

131

You can use conda remove --force.

The documentation says:

--force               Forces removal of a package without removing packages
                      that depend on it. Using this option will usually
                      leave your environment in a broken and inconsistent
                      state
darthbith
  • 18,484
  • 9
  • 60
  • 76
Gustavo Muenz
  • 9,278
  • 7
  • 40
  • 42
  • For me, I was trying to get around all the extra fluff when you run plain `conda remove x` about updates/etc, but I still wanted to remove some dependencies. I was able to do some piping: `conda remove --force -y $(conda list $MATCHING_PATTERN | grep "$MATCHING_PATTERN" | awk '{ print $1 }')` got rid of a package and its dependencies matching `$MATCHING_PATTERN` – MichaelChirico Apr 24 '19 at 10:21
  • 4
    conda remove --force pandas – Dhiren Hamal Jun 04 '19 at 02:59
  • 2
    unfortunately this isn't possible with `mamba` at the moment: https://github.com/mamba-org/mamba/issues/412 – wordsforthewise Sep 26 '21 at 10:39