最小化平方和函数,然后提取方差-协方差

时间:2018-10-19 08:50:04

标签: r

简而言之,我的问题集中在从最小平方和函数中提取方差-协方差矩阵。以下是我尝试最小化的简单示例。


给出:

p <- c(7.8, 4.1, 6.2, 5.3, 10.1, 9.6)
x <- 1:6
f <- function(x,q){x^2-q*x+14}

预测误差平方和

SSE <- function(q){ sum((p-f(x,q))^2) }

以最小为例,然后计算方差协方差矩阵为重点。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

由于模型是线性的,因此可以使用lm

p <- c(7.8, 4.1, 6.2, 5.3, 10.1, 9.6)
x <- 1:6
f <- function(x,q){x^2-q*x+14}

fit <- lm(I(p - x^2 - 14) ~ x + 0)
summary(fit)$coef
#   Estimate Std. Error   t value     Pr(>|t|)
#x -6.275824   0.212917 -29.47545 8.426765e-07
vcov(fit)
#           x
#x 0.04533366

#illustrate that this is the minimum
f <- function(x,q){x^2-q*x+14}
SSE <- function(q){ sum((p-f(x,q))^2) }

a <- seq(from = 0, to =10, by = 0.001)
plot(a, sapply(a, SSE), type = "l")
abline(v = -coef(fit))

resulting plot