R中带系数条件的线性回归函数

R中带系数条件的线性回归函数,r,regression,linear-regression,least-squares,R,Regression,Linear Regression,Least Squares,我搜索了又搜索,但没有找到答案,尽管我认为我想做的事情并不难。。。我为拼写错误感到抱歉,我不是以英语为母语的人;) 我有几个(x,y)-数据点都在0和1之间,例如(0,0),(0.2,0.05),(0.4,0.15),(0.6,0.3),(0.8,0.6),(1,1) 我想让R计算一个回归函数(用最小二乘法)y=ax^3+bx^2+c*x来拟合区间[0,1]中的数据点。 (因此,我希望它是一个3次多项式,但d=0,因为它应该始终指向点(0,0),这可以通过在lm公式中添加-1轻松实现。) 另外,

我搜索了又搜索,但没有找到答案,尽管我认为我想做的事情并不难。。。我为拼写错误感到抱歉,我不是以英语为母语的人;)

我有几个(x,y)-数据点都在0和1之间,例如(0,0),(0.2,0.05),(0.4,0.15),(0.6,0.3),(0.8,0.6),(1,1)

我想让R计算一个回归函数(用最小二乘法)y=ax^3+bx^2+c*x来拟合区间[0,1]中的数据点。 (因此,我希望它是一个3次多项式,但d=0,因为它应该始终指向点(0,0),这可以通过在lm公式中添加-1轻松实现。)

另外,我希望c是1-a-b,因为我需要f(1)=1

回归模型:y=ax^3+bx^2+cx=ax^3+bx^2+(1-a-b)x
因此,您基本上需要一个对参数有约束的线性模型。两个相关职位是:。此外,包
glmc
似乎以一种简单的方式实现了这一点,谢谢。我决定用“trick”
输出来实现这一点,因此,您基本上需要一个对参数有约束的线性模型。两个相关职位是:。此外,包
glmc
似乎以一种简单的方式实现了这一点,谢谢。我决定用“技巧”
输出来完成它
# regression model: y = ax^3 + bx^2 + cx = ax^3 + bx^2 + (1-a-b)x
output <- lm(I(yValues) ~ I(xValues^3) + I(xValues^2) + I(xValues) -1) 

# coefficients:
d1 <- summary(output)$coefficients[1] 
d2 <- summary(output)$coefficients[2] 
d3 <- summary(output)$coefficients[3]