有没有一种方法可以直接或间接地调用https://github.com/scipy/scipy/tree/master/scipy/special/cdflib中可以找到的Fortran例程,scipy.stats
所使用的函数应该是numba
在nopython
模式下编译的?在
具体地说,因为scipy.stats.norm.cdf()
相当慢,所以我现在直接使用scipy.special.ndtr
,它由前者调用。但是,我是在一个循环中执行此操作,我的目的是使用numba
来加速它。在
Tags:
如果您只需要普通的CDF,那么可以使用标准库的
math
模块中的erfc
函数来实现它。在您可以使用
numba.vectorize
而不是numba.jit
来矢量化它。在我来看看rvlib,它使用Numba和CFFI调用RMath,这是R用来计算统计分布的独立C库。它提供的函数应该可以由Numba在
nopython
模式下调用。请看自述文件中的函数示例,该函数相当于scipy.stats.norm.cdf()
如果您仍然对自己包装
cdflib
感兴趣,我建议您使用CFFI。你必须为你想要的函数建立一个C接口。你可能会发现我写的这篇博文对入门很有帮助:https://www.continuum.io/blog/developer-blog/calling-c-libraries-numba-using-cffi
相关问题 更多 >
编程相关推荐