R中曲线的最佳拟合曲线

时间:2011-09-21 15:00:19

标签: r curve-fitting

我在一个名为ph的图中有一个概率密度函数,我是通过stackoverflow用户的帮助从这两个数据样本中得到的,这样

 few <-read.table('outcome.dat',head=TRUE)
 many<-read.table('alldata.dat',head=TRUE)
 mh <- hist(many$G,breaks=seq(0,1.,by=0.03), plot=FALSE)
 fh <- hist(few$G, breaks=mh$breaks, plot=FALSE)
 ph <- fh
 ph$density <- fh$counts/(mh$counts+0.001)
 plot(ph,freq=FALSE,col="blue")

我想符合ph值曲线的最佳曲线,但我找不到工作方法。 我怎样才能做到这一点?我必须从ph中提取vaule,然后对它们进行处理?或者有相同的功能适用于

 plot(ph,freq=FALSE,col="blue")

直接?

2 个答案:

答案 0 :(得分:3)

假设你的意思是你想要对ph​​中的数据进行曲线拟合,那么就是这样的 nls(FUN, cbind(ph$counts, ph$mids),...)可能有用。你需要知道你认为直方图数据应该适合哪种函数'FUN',例如:正态分布。阅读nls()上的帮助文件,了解如何在FUN中为系数设置起始“猜测”值。

如果您只想将曲线叠加到直方图上,则smoo<-spline(ph$mids,ph$counts); lines(smoo$x,smoo$y)

将接近这样做。您可能需要调整x和/或y缩放。

答案 1 :(得分:2)

你想要密度函数吗?

x = rnorm(1000)
hist(x, breaks = 30, freq = FALSE)
lines(density(x), col = "red")