R:拟合曲线到点:使用什么线性/非线性模型?

迈卡

我有一个应该遵循幂律分布的数据。

x = distance 
y = %

我想创建一个模型并将拟合线添加到我的图中。

我的目标是重新创建这样的东西:在此处输入图片说明

由于作者使用 R 方;我假设他们应用了线性模型,因为 R^2不适用于非线性模型http://blog.minitab.com/blog/adventures-in-statistics-2/why-is-there-no-r-squared-for-nonlinear-regression

但是,我不知道如何将我的线“弯曲”到点;如何将公式添加y ~ a*x^(-b)到我的模型中。

而不是卷线,我从简单的线性回归中取回了这条线。 在此处输入图片说明

我的问题是:

  • Do I correctly assume the model y ~ a*x^(-b) used by author is linear?
  • what type of model to use to recreate my example: lm, glm, nls, etc. ?

I generated the dummy data, including the applied power law formula from the plot above:

set.seed(42)
scatt<-runif(10)

x<-seq(1, 1000, 100)
b = 1.8411
a = 133093
y = a*x^(-b) + scatt  # add some variability in my dependent variable

plot(y ~ x)

and tried to create a glm model.

# formula for non-linear model
m<-m.glm<-glm(y ~ x^2, data = dat) # 

# add predicted line to plot
lines(x,predict(m),col="red",lty=2,lwd=3)

This is my first time to model, so I am really confused and I don't know where to start... thank you for any suggestion or directions, I really appreciate it...

李哲源

I personally think this question a dupe of this: `nls` fails to estimate parameters of my model but I would be cold-blooded if I close it (as OP put a bounty). Anyway, bounty question can not be closed.

So the best I could think of, is to post a community wiki answer (I don't want to get this bounty).

当您想要拟合这种形式的模型时y ~ a*x^(-b),通常会受益log于在两侧进行变换并拟合线性模型log(y) ~ log(x)

fit <- lm(log(y) ~ log(x))

正如您已经知道如何使用curve绘制回归曲线并对此感到满意,我现在将展示如何绘制回归曲线。

有些人称之为对数回归。以下是我对此类回归的一些其他链接:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R中的非线性曲线拟合

来自分类Dev

在R中拟合广义非线性模型

来自分类Dev

非线性拟合正弦曲线失败

来自分类Dev

使用GSL的非线性拟合

来自分类Dev

为什么在 scipy 中优化曲线拟合为这个非线性模型创建一条直线?

来自分类Dev

错误非线性回归python曲线拟合

来自分类Dev

Matlab中的n维非线性曲线拟合

来自分类Dev

如何从非线性回归拟合功率曲线?

来自分类Dev

R中的非线性最小二乘曲线拟合

来自分类Dev

为什么我在Mathematica中拟合的非线性模型不能提供小的数字?

来自分类Dev

将数据拟合到后处理非线性模型时,curve_fit 的算法是什么?

来自分类Dev

用线性/非线性回归拟合两条曲线

来自分类Dev

将两个非线性模型拟合到数据

来自分类Dev

Octave 中的非线性拟合

来自分类Dev

如何使用matplotlib绘制非线性模型?

来自分类Dev

在R中拟合非线性Langmuir等温线

来自分类Dev

确定R中非线性回归的拟合方程

来自分类Dev

如何在 R 中拟合非线性线?

来自分类Dev

在R中拟合线性回归模型

来自分类Dev

使用曲线对矩阵(图像)中的值进行非线性转换

来自分类Dev

使用曲线对矩阵(图像)中的值进行非线性转换

来自分类Dev

GRG 非线性 R

来自分类Dev

使用优化的R中的非线性优化

来自分类Dev

在GSL中,是任何用于非线性曲线拟合的函数

来自分类Dev

逐段拟合非线性数据

来自分类Dev

向R中的非线性模型添加约束

来自分类Dev

什么是非线性模式

来自分类Dev

在TensorFlow中使用ReLU建立非线性模型

来自分类Dev

使用R的线性回归模型