我正在使用Python 3.9.13。我安装了scikit-从终端学习:pip install scikit-learn
然后我尝试使用fetch_openml
下载mnist数据集。
from sklearn.datasets import fetch_openml
raw_data = fetch_openml('mnist_784')
这给了我一条很长的错误消息,其结尾是:
fetch_openml with as_frame=True requires pandas.
但是,我安装了pandas
。因此,我更深入地研究了错误消息,发现导致该错误的例外情况如下:
ModuleNotFoundError: No module named '_bz2'
发布于 2022-11-17 21:39:01
我环顾四周,在this thread中找到了一个解决方案。
我只需要在这个解决方案上再加一步。在安装libbz2-dev
之后,我的计算机上只有_bz2.cpython-38-x86_64-linux-gnu.so
,它用于python3.8.x,因此它不适用于我版本的python。我将文件的名称更改为_bz2.cpython-39-x86_64-linux-gnu.so
,并在此之后起了作用。
sudo apt-get install libbz2-dev
sudo cp /usr/lib/python3.8/lib-dynload/_bz2.cpython-38-x86_64-linux-gnu.so /usr/local/lib/python3.9/
sudo mv /usr/local/lib/python3.9/_bz2.cpython-38-x86_64-linux-gnu.so /usr/local/lib/python3.9/_bz2.cpython-39-x86_64-linux-gnu.so
发布于 2022-11-25 23:27:55
当我想导入_lzma
库时,也遇到了类似的问题。
通过在终点站运行以下线路解决了这个问题:
sudo apt install liblzma-dev
sudo cp /usr/lib/python3.8/lib-dynload/_lzma.cpython-38-x86_64-linux-gnu.so /usr/local/lib/python3.9/
sudo mv /usr/local/lib/python3.9/_lzma.cpython-38-x86_64-linux-gnu.so /usr/local/lib/python3.9/_lzma.cpython-39-x86_64-linux-gnu.so
https://stackoverflow.com/questions/74482392
复制相似问题