Стандартная ошибка и доверительный интервал для нелинейной функции коэффициентов регрессии наименьших квадратов

Я запускаю регрессию OLS в R, из которой я получаю пару коэффициентов. Вот часть кода:

Attacks <- Treat.Terr.Dataset$Attacks[2:30]
Attackslag <- Treat.Terr.Dataset$Attacks[1:29]
TreatmentEffect <- Treat.Terr.Dataset$TreatmentEffect[2:30]
TreatmentEffectlag <- Treat.Terr.Dataset$TreatmentEffect[1:29]

olsreg <- lm(TreatmentEffect ~ TreatmentEffectlag + Attacks + Attackslag)
coeffs<-olsreg$coefficients

И тогда мне нужно будет вычислить: (Attacks + Attackslag) / (1 - TreatmentEffectlag). Проблема в том, что я могу сделать это на R, используя (coeffs[3] + coeffs[4]) / (1 - coeffs[2]), но результатом будет фиксированное число без какого-либо p-значения или доверительного интервала, как показал бы мне калькулятор.

Кто-нибудь знает, есть ли какая-либо функция, которую я мог бы использовать для расчета этого с доверительным интервалом?


Примечание редактора

Если целевое количество является линейной функцией коэффициентов регрессии, то проблема сводится к общей линейной проверке гипотез, где возможен точный вывод.


person Gonzalo M.    schedule 22.12.2016    source источник
comment
Добро пожаловать в StackOverflow! Прочтите информацию о том, как задать хороший вопрос и как поставить воспроизводимый пример. Это значительно облегчит другим людям помощь.   -  person Jaap    schedule 22.12.2016
comment
Для чего вы планируете их использовать? Это определит лучший ответ.   -  person Elin    schedule 22.12.2016


Ответы (2)


Вот самодостаточный пример использования дельта-метода из пакета car:

# Simulate data
dat <- data.frame(Attacks = rnorm(30), Trt=rnorm(30))
dat <- transform(dat, AttacksLag = lag(Attacks), TrtLag = lag(Trt))
dat <- dat[2:30,]

# Fit linear model
m1 <- lm(Trt ~  TrtLag + Attacks + AttacksLag, data=dat)

# Use delta method
require("car")
del1 <- deltaMethod(m1, "(Attacks + AttacksLag) / (1 - TrtLag)")

# Simple Wald-type conf int
del1$Est +  c(-1,1) * del1$SE * qt(1-.1/2, nrow(dat)-length(coef(m1)))
# [1] -0.2921529  0.6723991
person Kevin Wright    schedule 22.12.2016

person    schedule
comment
Ницца. Я собирался сделать это дельта-методом. Для объяснения того, что здесь происходит, вы можете обратиться к разделу 5 (в частности, 5.3) документа ms.mcmaster.ca/~bolker/emdbook/chap7A.pdf - person Ben Bolker; 22.12.2016