【问题标题】:best fitting curve from plot in RR中绘图的最佳拟合曲线
【发布时间】:2011-09-21 15:00:18
【问题描述】:

我在一个名为 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 中提取值然后对它们进行处理?或者有相同的功能在

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

直接?

【问题讨论】:

    标签: r curve-fitting


    【解决方案1】:

    假设您的意思是要对 ph 中的数据执行曲线拟合,然后按照 nls(FUN, cbind(ph$counts, ph$mids),...) 可能有效。您需要知道您认为直方图数据应该适合哪种函数“FUN”,例如正态分布。阅读nls() 上的帮助文件,了解如何为 FUN 中的系数设置起始“猜测”值。

    如果你只是想在直方图上叠加一条曲线,那么smoo<-spline(ph$mids,ph$counts); lines(smoo$x,smoo$y)

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

    【讨论】:

      【解决方案2】:

      你想要密度函数吗?

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

      【讨论】:

      • 我实际上认为这比我的样条解决方案更好。
      猜你喜欢
      • 2017-03-31
      • 1970-01-01
      • 1970-01-01
      • 2011-01-31
      • 1970-01-01
      • 2011-07-18
      • 2019-03-31
      • 1970-01-01
      相关资源
      最近更新 更多