我需要估计高斯模型的参数。我喜欢使用自启动来选择参数。我已经用不同数据集的逻辑模型做了类似的事情。我想知道对于高斯分布是否有类似的SSlogis函数
x <- runif(20)
y <- rexp(20)
a <- data.frame(x,y)
log_model <- nls(y~SSlogis(x, phi1, phi2, phi3), data = a)
我想做的是类似的方法,但使用高斯模型。对于高斯分布,我没有找到类似SSlogis的函数。R文档说有一个SSgauss
函数,但我没有找到它https://www.rdocumentation.org/packages/xcms/versions/1.48.0/topics/SSgauss
我在python3代码中看到了与我想要的类似的东西
def gaussian_f(x,a,b,c):
y = a * np.exp(-0.5 * ((x-b)/c)**2)
return y
##optimize from scipy
gaussian_m, cov = optimize.curve_fit(gaussian_f, x=np.arrange(len(a["y"])), y=dtf["y"].values, maxfev=10000, p0=[1,np.mean(a["y"]) ,1]
R是开源的,Bioconductor在
因此,只要用户遵守许可条款,就可以下载并使用函数
SSgauss
的源代码以下是在文件
xcms/R/models.R
中找到的函数的源代码现在将高斯模型拟合到问题中的数据集
相关问题 更多 >
编程相关推荐