Неправильная подгонка команды аблина

Я пытаюсь использовать команду abline, чтобы уместить строку и найти значение R-квадрата для отношения между столбцами из двух разных источников данных. Мои манипуляции с данными следующие:

df<-data.frame(prop=as.numeric(as.character(prop$factorised column)), spv=column_from_a_matrix[,1]) #align the columns

df<-subset(df, !is.na(df$prop) & df$prop!=0.00) # 'as.numeric(as.character' introduces NA 
                                                # values by coercion and get rid of 0's
with(df, plot(prop, spv))
abline(fit <- lm(prop ~ spv, data=df), col='red')
legend("topright", bty="n", legend=paste("R2 is", format(summary(fit)$adj.r.squared, digits=4)))

Однако производимая линия явно не права:

 summary(lm(prop ~ spv, data=df))

 Call:
 lm(formula = prop ~ spv, data = df)

 Residuals:
   Min         1Q     Median         3Q        Max 
 -3.6856794 -0.9907636 -0.3290975  0.6782148  7.7086112 

 Coefficients:
                 Estimate  Std. Error  t value               Pr(>|t|)    
  (Intercept)  2.78546164  0.07840516 35.52651 < 0.000000000000000222 ***
  spv         22.61806073  2.18325279 10.35980 < 0.000000000000000222 ***
  ---
 Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 Residual standard error: 1.633367 on 432 degrees of freedom
 Multiple R-squared:  0.1989994,    Adjusted R-squared:  0.1971452 
 F-statistic: 107.3254 on 1 and 432 DF,  p-value: < 0.00000000000000022204

Поскольку я не получаю никаких ошибок, я не могу видеть, где я иду не так, хотя отношения явно неправильные.....

Вывод dput(df):

    structure(list(prop = c(1.4, 2.5, 2.6, 3.3, 1.63, 0.9, 2.22, 2.43, 0.64, 1.4, 3.1, 0.41..... 
    spv = c(0.0636986180909399, -0.0596651855579327..... 
    .Names = c("prop", "spv"), 
    row.names = c(3L, 4L, 11L, 12L, 13L, 16L, 18L, 19L, 24L ....

Мое исследование команды abline только что сказало мне, что именно то, что я делаю, правильно... может кто-то указать мне правильное направление?

0 ответов

Другие вопросы по тегам