#r #model #statistics
Вопрос:
Я пытаюсь рассчитать R^2 и СМЕЩЕНИЕ для моей модели. Будет ли функция lm() в r вычислять правильный квадрат r для такого рода данных или в этом случае я должен использовать другой подход?
lm(data = mydata, field ~ model)
> mydata
dt field model
1 2008-02-21 0.7766415 8.720998e-05
2 2008-02-27 0.9316507 4.059667e-05
3 2008-03-07 0.9954676 2.168858e-05
4 2008-03-12 8.1711261 2.711445e-05
5 2008-03-19 1.8875487 3.148428e-04
6 2008-03-23 13.7546578 2.571265e-03
7 2008-04-09 8.4531061 2.491486e 01
8 2008-04-16 157.4468586 5.337512e 01
9 2008-04-20 72.7021683 5.959968e 01
10 2008-04-23 164.8639346 6.262574e 01
11 2008-04-25 19.4205976 6.466555e 01
12 2008-04-29 29.7036234 6.894880e 01
13 2008-04-30 79.0754943 7.005220e 01
14 2008-05-02 8.0940597 7.227196e 01
15 2008-05-04 67.7835286 7.454248e 01
16 2008-05-09 148.7718404 8.025791e 01
17 2008-05-14 73.8772608 8.534679e 01
18 2008-05-19 12.1967041 8.825417e 01
19 2008-05-28 42.1169176 8.418975e 01
20 2008-06-03 57.3468348 7.561152e 01
21 2008-06-09 37.6524699 6.689904e 01
22 2008-07-12 15.9032723 1.545580e 00
23 2008-07-18 4.5106704 5.650615e-01
Спасибо!
Комментарии:
1.
summary(lm(data = mydata, field ~ model))$adj.r.squared
чтобы скорректировать R^22. Почему этот квадрат r был бы неправильным? Вы можете извлечь r.в квадрате из
summary
функции, как только вы выполнилиlm
.3. Это вполне может быть правильным. Я просто не знаком с использованием функции lm() для различных типов данных. Спасибо.
Ответ №1:
R2 и другие статистические данные вычисляются вызовом summary(lm)
, их можно извлечь следующим образом:
mydata <- read.delim("mydata.txt")
lm <- lm(field ~ model, mydata)
summary(lm) # see R2 = 0.2458
#Call:
#lm(formula = field ~ model, data = mydata)
#
#Residuals:
# Min 1Q Median 3Q Max
#-65.600 -22.314 -8.323 4.025 106.694
#
#Coefficients:
# Estimate Std. Error t value Pr(>|t|)
#(Intercept) 10.2107 15.2361 0.670 0.51006
#model 0.7658 0.2680 2.858 0.00942 **
#---
#Signif. codes:
#0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#
#Residual standard error: 44.76 on 21 degrees of freedom
#Multiple R-squared: 0.28, Adjusted R-squared: 0.2458
#F-statistic: 8.168 on 1 and 21 DF, p-value: 0.009418
# check summary attributes
attributes(summary(lm)) # in $names, you see the components
#$names
# [1] "call" "terms" "residuals"
# [4] "coefficients" "aliased" "sigma"
# [7] "df" "r.squared" "adj.r.squared"
#[10] "fstatistic" "cov.unscaled"
#
#$class
#[1] "summary.lm"
# extract summary components
summary(lm)$r.squared
#[1] 0.2800362
summary(lm)$adj.r.squared
#[1] 0.2457522