python - 在 Mountain Lion 上安装 Scipy

标签 python scipy osx-mountain-lion

我正在尝试使用 Xcode 及其命令行工具在全新安装的 Mountain Lion 上安装 python 及其科学库。

我安装了自制软件,并通过它安装了一个新的 python 2.7,因为我不想弄乱 Apple 提供的那个。我也总是通过自制软件安装 gfortran。

然后我从源代码安装 Numpy,使用标志使用 gfortran 构建它。我这样做是因为如果我 pip 安装它,那么 scipy 安装将会失败。

安装后,我通过 bumpy.test('full') 对其进行了测试,它说可以。

此时我尝试安装 scipy,既使用 pip 也使用源代码。结果是一样的,它安装了,但是当我使用 scipy.test() 测试它时,我遇到了大量的失败和一个错误。 知道如何解决这个问题吗?

报错是

ERROR: test_logm_consistency (test_matfuncs.TestExpM)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/scipy/linalg/tests/test_matfuncs.py", line 124, in test_logm_consistency
    assert_array_almost_equal(expm(logm(a)), a)
  File "/usr/local/lib/python2.7/site-packages/scipy/linalg/matfuncs.py", line 453, in logm
    errest = norm(expm(F)-A,1) / norm(A,1)
  File "/usr/local/lib/python2.7/site-packages/scipy/linalg/matfuncs.py", line 49, in expm
    A_L1 = norm(A,1)
  File "/usr/local/lib/python2.7/site-packages/scipy/linalg/misc.py", line 12, in norm
    a = np.asarray_chkfinite(a)
  File "/usr/local/lib/python2.7/site-packages/numpy/lib/function_base.py", line 590, in asarray_chkfinite
    "array must not contain infs or NaNs")
ValueError: array must not contain infs or NaNs

失败与 boas、basic、dot、asum、nrm2、arpack 有关。

知道如何解决这个问题吗?

最佳答案

我的建议是始终在 virtualenv 中设置 python 计算环境(尤其是使用像 scipy 和 numpy 这样挑剔的包) . virtualenv 是一种工具,可让您设置和切换进出隔离的 Python 环境,以便在一个环境中安装和更改内容不会与其他环境混淆。

编辑:使用 virtualenv 的另一个原因是如果你搞砸了一切,你并没有搞砸你的全局系统配置,你可以删除 virtualenv 并从头开始修复它。我也推荐virtualenvwrapper这基本上只是一些让 virtualenv 更直观、更快速使用的糖。

还要解决您的实际问题:我相信您仍然必须使用 scipy 的开发分支才能在 OSX 10.8 上成功编译。我按照说明 here非常准确,一切正常。

关于python - 在 Mountain Lion 上安装 Scipy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13478555/

相关文章:

python - pycharm 调试器控制台无法更改变量的值

Python:优化.leastsq。 ValueError:具有多个元素的数组的真值不明确

objective-c - 沙盒核心WLAN?

ruby-on-rails - Mountain Lion - LibXML 和 Nokogiri

python - Scipy 安装问题,出现 ImportError : libopenblas. so.0: 无法打开共享对象文件或目录

python 无法在 teed 时分离进程。如何跨越后台进程并无需等待退出?

python - 除以列表数组中的每个值

python - 通过 scipy.stats.fit() 从 MLE 中检索优化结果?

python - Scipy 错误地解决了矩阵的特征问题

objective-c - 如何以编程方式进入目标显示模式?