为什么我的R平方错了

时间:2015-10-21 21:18:43

标签: r linear-regression

我有这个样本数据:

data <- matrix(0, 2, 3)
data[, 1] = c(3, 1.008991)
data[, 2] = c(4, 0.9981358)
data[, 3] = c(5, 1.000626)
data <- data/norm(data)

          [,1]      [,2]      [,3]
[1,] 0.4999478 0.6665971 0.8332464
[2,] 0.1681476 0.1663386 0.1667536

使用Ransac我得到了这个线方程(第一个索引是b,第二个是a)

result <- c(0.1735747, -0.0108552)

现在,这是我的R平方计算(using wikipedia equations

y_ <- sum(data[2,])/length(data[1,])
f <- function(x) result[2]*x+result[1]
SStot <- sum( (data[2,]-y_)^2 )
SSreg <- sum( (f(data[1,])-y_)^2 )
SSres <- sum( (data[2,]-f(data[1,]))^2 )
R2 <- 1 - (SSres/SStot)

R2的结果是-1.753875,这是不正确的(afaik)。 Wolfram Alpha给了我0.540996。我做错了什么?我期望R2来自区间&lt; 0,1&gt;。

0 个答案:

没有答案