繁体   English   中英

如何在 M1 mac 上使用 pandas? (没有rosetta或以任何其他方式更改为x86环境)

[英]How to use pandas on M1 mac? (without rosetta or changing to x86 environment in any other way)

上次我在不到 2 个月前写了一个 python 项目,一切正常。 我不确定在处理其他项目时是否在我的 Mac 上搞砸了一些东西,但现在当尝试运行曾经完美运行的 python 文件时,会出现以下错误:

dlopen(/opt/homebrew/lib/python3.9/site-packages/pandas/_libs/interval.cpython-39-darwin.so, 0x0002): tried: '/opt/homebrew/lib/python3.9/site-packages/pandas/_libs/interval.cpython-39-darwin.so' (mach-o file, but is an incompatible architecture (have 'x86_64', need 'arm64e')), '/usr/local/lib/interval.cpython-39-darwin.so' (no such file), '/usr/lib/interval.cpython-39-darwin.so' (no such file)

我了解 x86 与 arm 架构存在问题,因此我尝试查看终端使用的平台:

python -c 'import platform; print(platform.platform())'  

确认它是arm64。 进行一些谷歌搜索并查看类似的问题,例如在新的 MacBook Air M1 上安装 Pandas 时遇到问题,似乎可以在 x86 环境中运行 python 项目,并且之前已经提到过它的环境很好,但它似乎已经很好了此后没有更新,所以 pandas(可能还有其他库)不再适用于 arm 会发生什么情况,如何恢复?

您应该尝试使用miniforge

其 GitHub 存储库中的定义:

此存储库包含特定于 conda-forge 的最小 Conda 安装程序。 Miniforge 允许您安装 conda package 管理器,并预先配置了以下功能:

它的主要功能对我们有用

强调支持各种 CPU 架构(x86_64、ppc64le 和 aarch64,包括 Apple M1)。

我使用的过程:

  1. 创建一个 conda 环境,通常使用“python3.9”创建 go。
  2. 从 conda 安装软件包,其中大部分可用,但有些不可用。
  3. 在尝试使用 miniforge 安装所有可能的软件包后,我将PIP用于剩余的软件包。

这个工作流程对我来说效果很好,希望对你有所帮助。 我想利用原生的 m1 性能,我认为您将能够看到差异。

默认情况下,miniforge 只下载与 arm 兼容的 python 包的构建。 到目前为止,除了 PyTorch 之外,我在使用大多数数据科学库时还没有遇到任何重大问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM