我正在尝试将erf函数与python一起使用,但遇到错误:

  File "java.py", line 40, in <module>
    getQ(x)
  File "java.py", line 13, in getQ
    q = math.log(1.0- erf.erf(math.abs(x)/SQRT2))
AttributeError: 'numpy.ufunc' object has no attribute 'erf'


这是我的代码:

import math
from scipy.special import erf

SQRT2 = math.sqrt(2.0)
x=2
ERRMUL = 1.0

def getQ(x):
    q = math.log(1.0-erf.erf(math.abs(x)/SQRT2))
    print q
getQ(x)


我应该执行一个特定的模块吗?

最佳答案

您只需要调用erf,而不是erf.erf(不存在,因此会引发异常),而只是abs而不是math.abs

def getQ(x):
    q = math.log(1.0-erf(abs(x)/SQRT2))
    print(q)

关于python - 如何正确地从scipy.special调用erf函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45884552/

10-12 18:19