Основна проблема полягає в тому, що я не можу отримати подібні оцінки параметрів за допомогою EViews та R.
З причин, яких я не знаю, мені потрібно оцінити параметри для певних даних за допомогою EViews. Це робиться шляхом вибору параметра NLS (нелінійні найменші квадрати) та використання наступної формули:indep_var c dep_var ar(1)
EViews стверджує, що вони оцінюють лінійні процеси AR (1), такі як: де помилки визначаються як: , використовуючи еквівалент рівняння (з деякими алгебраїчними ): Крім того, ця нитка над на форумах EViews припускає, що їх оцінки NLS формуються алгоритмом Марквардта.
Тепер функція go-to для оцінки процесів AR (1) є arima
. Однак є дві проблеми:
- оцінки - максимальна оцінка ймовірності;
- оцінка перехоплення насправді не є перехоплюючою оцінкою (за даними RH Shumway & DS Stoffer).
Тому я звернувся до nlsLM
функції з пакету minpack.lm. Ця функція використовує алгоритм Маркварда для досягнення нелінійних оцінок найменших квадратів, які повинні дати ті ж результати, що й реалізація EViews (або, принаймні, дуже схожі).
Тепер код. У мене є фрейм даних ( data
) з незалежною змінною та залежною змінною, такою як генерований наступним кодом:
data <- data.frame(independent = abs(rnorm(48)), dependent = abs(rnorm(48)))
Для оцінки параметрів у рівнянні претензій EViews для оцінки (3- й на цій посаді) я використовую такі команди:
library(minpack.lm)
result <-
nlsLM(dependentB ~ ((1 - theta1) * theta2) + (theta1 * dependentA) +
(theta3 * independentB) - (theta1 * theta3 * independentA),
data = list(dependentB = data$dependent[2:48], dependentA = data$dependent[1:47],
independentB = data$independent[2:48], independentA = data$independent[1:47]),
start = list(theta1 = -10, theta2 = -10, theta3 = -10)
)
На жаль, оцінки, отримані за допомогою nlsLM
, не наближені до тих, що виводиться EViews. Чи маєте ви уявлення про те, що може бути причиною цього? А може мій код неправильний?
Нарешті, я хотів би сказати, що я особисто є користувачем R - саме тому я намагаюся зробити це в R замість EViews. Я також хотів би надати вам дані, з якими працюю, але це неможливо, оскільки це конфіденційні дані.