【发布时间】:2011-10-09 17:47:37
【问题描述】:
numpy 中vectorize 和frompyfunc 有什么区别?
两者看起来非常相似。它们各自的典型用例是什么?
编辑:正如 JoshAdel 所指出的,vectorize 类似乎是建立在 frompyfunc 之上的。 (见the source)。我仍然不清楚frompyfunc 是否有任何vectorize 未涵盖的用例...
【问题讨论】:
-
有任何 numpy 开发人员可以解决这个问题吗? Numpy 有很多这样的情况,在文档中存在更高和更低级别的实现,它们之间没有指针。
-
出于某种秘密原因,
frompyfunc生成的函数有意识地忽略dtype参数并返回objects 数组。正如文档所解释的,“返回的 ufunc 总是返回 PyObject 数组”。有一个简单而巧妙的解决方法:提交所需类型的数组作为out参数。相反,vectorize函数允许使用otypes参数指定 ufunc 的输出类型,但与使用嵌套列表相比,它应该很慢,因此相当无用。
标签: python arrays numpy vectorization