安装成功后,无法在conda环境中加载表

时间:2020-07-21 20:53:57

标签: python conda pytables

我在conda部分的tutorial之后的conda环境中安装了pytables。基本上,我执行了以下步骤:

conda config --add channels conda-forge
conda install pytables
conda install hdf5

现在似乎所有内容均已正确安装,但是第一个可能的问题。本教程中的以下命令为python setup.py install。这让我失望,首先是因为它似乎已经安装,其次是因为我的当前目录中没有setup.py文件,并且本教程也不清楚应该在哪里。运行它我显然得到了

python: can't open file 'setup.py': [Errno 2] No such file or directory

因此,我决定假定这是通过另一种方式安装没有conda的软件包,并且在本教程中被放错了地方。

但是,当我尝试用import tables加载软件包时,我得到了

ImportError                               Traceback (most recent call last)
<ipython-input-1-0a99ad28a088> in <module>
    
----> 1 import tables

~\AppData\Roaming\Python\Python37\site-packages\tables\__init__.py in <module>
     97 
     98 # Necessary imports to get versions stored on the cython extension
---> 99 from .utilsextension import (
    100     get_pytables_version, get_hdf5_version, blosc_compressor_list,
    101     blosc_compcode_to_compname_ as blosc_compcode_to_compname,

ImportError: DLL load failed: The specified module could not be found.

如果有任何意义,我正在尝试在Windows 10中将其删除

谢谢!

2 个答案:

答案 0 :(得分:1)

我知道您的困惑可能源于何处。我出于好奇而尝试了此操作,以查看是否可以复制您的错误,这就是我发现的结果:

这是我的步骤:

打开anaconda提示

mkdir testdir
cd testdir
conda create --name testenvironment #Do this to make your life easier. Its good to work on virtual environments.
conda activate testenvironment #you can switch back later by doing conda deactivate

conda config --add channels conda-forge
conda install pytables

#hdf5 should install automatically but in case it doesn't...
conda install hdf5

这是您出现错误的地方。您可能没有安装/未将目录(cd)更改为所创建的pytables安装。在此处运行python setup.py install会导致您的错误。

我使用Git来获取文件,但是您可能不得不采用其他方法。

git clone https://github.com/PyTables/PyTables.git

cd PyTables
python setup.py install

那应该让您入门。如上面的注释所述,您需要C ++编译器才能在Windows上进行进一步开发。 祝你好运!

答案 1 :(得分:1)

在Windows上,我尝试加载以HDF5格式保存的LibraryRootProject对象时也遇到了同样的问题。

首先,提示我尝试加载文件时出错:缺少columns = [...] mask = df[columns[0]] == true for col_name in culomns[1:]: mask = mask | df[col_name] == true my_df = df[mask] 可选依赖项。我在pandas.DataFrame环境中通过tables安装了pytables

然后我得到了相同的错误消息:conda

我在此GitHub issue上找到了解决方案。 该线程引导我用conda install pytables安装ImportError: DLL load failed: The specified module could not be found. ,并且一切正常。

我不确定这是否是最好的解决方案(我怀疑所有这些都与snappy本身无关,而与路径配置或类似的东西无关);但这确实为我解决了这个问题。