Matlab';Python/SciPy中的高斯函数?
我需要Python中与Matlab的Matlab';Python/SciPy中的高斯函数?,python,matlab,numpy,scipy,gaussian,Python,Matlab,Numpy,Scipy,Gaussian,我需要Python中与Matlab的gaussmf函数等效的函数,但我找不到它 目前我只是重新实现了它: def gauss(x, sigma=1, mean=0, scale=1): return scale * numpy.exp(-numpy.square(x - mean) / (2 * sigma ** 2)) 但是只使用库函数感觉更好,最好是从numpy或scipy来的,这样我就可以在上面的x(一维numpy.ndarray)这样的数组上使用它了。这就是你要找的吗 随机抽样
gaussmf
函数等效的函数,但我找不到它
目前我只是重新实现了它:
def gauss(x, sigma=1, mean=0, scale=1):
return scale * numpy.exp(-numpy.square(x - mean) / (2 * sigma ** 2))
但是只使用库函数感觉更好,最好是从numpy或scipy来的,这样我就可以在上面的x(一维
numpy.ndarray
)这样的数组上使用它了。这就是你要找的吗
随机抽样这就是你要找的吗
随机抽样就库函数而言,最接近的可能是
不过这是一个单行函数-自己实现它有什么问题?就库函数而言,最接近的可能是
不过,这是一个单线性函数-自己实现它有什么问题?它很接近,但不太接近。我必须用:numpy.power(scipy.stats.norm.pdf(numpy.r_[-100:100])*sqrt(2.0*numpy.pi),1/(25**2)转换结果。即使如此,它也只是从中间的+/-39个指数跳到零(指数61和139)。与调用高斯(numpy.r_[-100:100],25.0)相比。我想要的只是高斯函数-;不过还是要感谢你的回答:-)>>>stats.norm.pdf(np.r_[-100:100],loc=0,scale=25.0)。min()5.3532090305954148e-06问题中的高斯函数不是一个像scipy.stats.norm.pdf那样的密度函数,因为它缺少一个归一化因子。我必须用:numpy.power(scipy.stats.norm.pdf(numpy.r_[-100:100])*sqrt(2.0*numpy.pi),1/(25**2)转换结果。即使如此,它也只是从中间的+/-39个指数跳到零(指数61和139)。与调用高斯(numpy.r_[-100:100],25.0)相比。我想要的只是高斯函数-;不过还是要感谢你的回答:-)>>>stats.norm.pdf(np.r_[-100:100],loc=0,scale=25.0)。min()5.3532090305954148e-06问题中的高斯函数不是一个像scipy.stats.norm.pdf那样的密度函数,因为它缺少一个标准化因子。你会感觉更好吗?你的功能很好。如果您想将其包含在scipy中,请尝试用您的代码填充请求!为什么你会感觉好些?你的功能很好。如果您想将其包含在scipy中,请尝试用您的代码填充请求!完美的这正是我需要的:D,因为我使用高斯函数来平滑函数:-)。我自己实现它并没有什么问题,但我喜欢坚持使用已经存在的函数,它只是减少了代码大小,从而降低了出现错误的概率,即使只是一行:-)。另外,它使我更加了解标准库,在其他场合也可能有所帮助:-)。谢谢!完美的这正是我需要的:D,因为我使用高斯函数来平滑函数:-)。我自己实现它并没有什么问题,但我喜欢坚持使用已经存在的函数,它只是减少了代码大小,从而降低了出现错误的概率,即使只是一行:-)。另外,它使我更加了解标准库,在其他场合也可能有所帮助:-)。谢谢!