【问题标题】:Can not access ConvexHull in Scipy 0.16.1无法在 Scipy 0.16.1 中访问 ConvexHull
【发布时间】:2016-01-25 01:38:12
【问题描述】:

我能够在以前版本的 Scipy 中使用 ConvexHull 函数。在我拥有的版本中,该功能不会提供 凸包的体积,因此我决定安装新版本的 Scipy。但安装 Scipy 0.16.1 后,我注意到空间库已重新排列,现在尝试调用 ConvexHull 函数时出现错误。

此代码适用于以前版本的 Scipy:

import numpy as np
import scipy as sp
X = np.random.randint(0,200,(30,2))
hull = sp.spatial.qhull.Delaunay(X).convex_hull

现在,对于上面的代码,我得到了错误:

属性错误:“模块”对象没有“空间”属性。

.qhull 里面好像什么都没有。 我已经在 VS,Spider,Ubuntu 中检查过这个

【问题讨论】:

    标签: python scipy


    【解决方案1】:

    您必须显式导入空间子包。这应该有效:

    import numpy as np
    import scipy as sp
    import scipy.spatial
    X = np.random.randint(0,200,(30,2))
    hull = sp.spatial.qhull.Delaunay(X).convex_hull
    

    【讨论】:

    • 现在我得到这个错误:from ._sparetools import csr_tocsc, csr_tobst, csr_count_blocks, \ ImportError: DLL load failed: %1 is not an valid Win32 application.
    • 这个错误告诉你scipy包没有正确安装。这可能有多种原因:编译包失败,您没有安装正确的二进制文件,可能还有更多。我会看看重新安装 scipy 是否有帮助。如果没有,您将必须提供更多信息才能得到一个好的答案。
    猜你喜欢
    • 2015-04-06
    • 2015-11-23
    • 2021-05-11
    • 2015-07-19
    • 2020-10-07
    • 2017-10-26
    • 2015-12-18
    • 2017-05-21
    • 1970-01-01
    相关资源
    最近更新 更多