Почему ошибка импорта фрейма данных DASK возникает даже после успешной полной установки?

#pandas #dataframe #pip #conda #dask

Вопрос:

Я пытаюсь поэкспериментировать с ДАСКОМ. Я перешел по следующим ссылкам:

https://docs.dask.org/en/latest/install.html

Я все успешно установил. Например, я выполнил следующие команды в своей виртуальной среде:

 conda install dask
python -m pip install "dask[complete]"
python -m pip install "dask[array]"       # Install requirements for dask array
python -m pip install "dask[dataframe]"   # Install requirements for dask dataframe
python -m pip install "dask[diagnostics]" # Install requirements for dask diagnostics
python -m pip install "dask[distributed]" # Install requirements for distributed dask
 

Все они показывают, что импорт прошел успешно. Но когда я пытаюсь импортировать файл CSV, он выдает мне ошибки для следующей команды из моего ноутбука Jupyter или интерпретатора Python:

 import dask.dataframe as dd


ImportError                               Traceback (most recent call last)
~/.conda/envs/latest/lib/python3.7/site-packages/dask/dataframe/__init__.py in <module>
      2     from ..base import compute
----> 3     from . import backends, dispatch, rolling
      4     from .core import (

~/.conda/envs/latest/lib/python3.7/site-packages/dask/dataframe/backends.py in <module>
      3 import numpy as np
----> 4 import pandas as pd
      5 from pandas.api.types import (

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/__init__.py in <module>
     54 
---> 55 from pandas.core.api import (
     56     # dtype

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/core/api.py in <module>
     14 from pandas.core.algorithms import factorize, unique, value_counts
---> 15 from pandas.core.arrays import Categorical
     16 from pandas.core.arrays.boolean import BooleanDtype

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/core/arrays/__init__.py in <module>
     10 from pandas.core.arrays.integer import IntegerArray, integer_array
---> 11 from pandas.core.arrays.interval import IntervalArray
     12 from pandas.core.arrays.numpy_ import PandasArray, PandasDtype

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/core/arrays/interval.py in <module>
     44 from pandas.core.indexers import check_array_indexer
---> 45 from pandas.core.indexes.base import ensure_index
     46 

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/core/indexes/base.py in <module>
     76 from pandas.core.ops.invalid import make_invalid_op
---> 77 from pandas.core.strings import StringMethods
     78 

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/core/strings/__init__.py in <module>
     29 
---> 30 from pandas.core.strings.accessor import StringMethods
     31 from pandas.core.strings.base import BaseStringArrayMethods

~/.conda/envs/latest/lib/python3.7/site-packages/pandas/core/strings/accessor.py in <module>
     15 import pandas._libs.lib as lib
---> 16 from pandas._typing import (
     17     DtypeObj,

ImportError: cannot import name 'DtypeObj' from 'pandas._typing' (/home/mdabdullahal.alamin/.conda/envs/latest/lib/python3.7/site-packages/pandas/_typing.py)

The above exception was the direct cause of the following exception:

ImportError                               Traceback (most recent call last)
/tmp/ipykernel_4116022/1671061512.py in <module>
----> 1 import dask.dataframe as dd
      2 # df  = dd.read_csv(file_name)
      3 # print(len(df))

~/.conda/envs/latest/lib/python3.7/site-packages/dask/dataframe/__init__.py in <module>
     58         '  python -m pip install "dask[dataframe]" --upgrade  # or python -m pip install'
     59     )
---> 60     raise ImportError(msg) from e

ImportError: Dask dataframe requirements are not installed.

Please either conda or pip install as follows:

  conda install dask                     # either conda install
  python -m pip install "dask[dataframe]" --upgrade  # or python -m pip install
 

Я даже деактивирую и повторно активирую виртуальную среду после установки dask. Но все равно это не работает и выдает ошибку:

 ImportError: Dask dataframe requirements are not installed.
 

Комментарии:

1. Не уверен, что это решит проблему, но запуска ОДНОГО из conda install -c conda-forge dask или python -m pip install "dask[complete]" должно быть достаточно.

2. Ваша последовательность установок, конечно, странная, но должна сработать. Вы должны публиковать выходные данные каждой команды.

Ответ №1:

Это были очень странные проблемы. Я до сих пор не понимаю, почему это могло произойти. У меня была виртуальная среда conda, в которой я занимался анализом данных с помощью Pandas и Numpy, а позже я установил DASK в этой среде.

Все эти команды установки были выполнены успешно. Но по какой-то причине это приводило меня к ошибке. Я перезапустил, деактивировал и повторно активировал среду, но это не сработало. Позже я просто обновил среду Conda, и она начала работать.

 conda -y update --all
 

Это устранило проблему. Это не дало мне никаких ошибок при установке DASK, но внутренне, возможно, какая-то библиотека не обновлялась должным образом.