Интерполяция с помощью na.approx: как это происходит? - PullRequest
1 голос
/ 06 февраля 2011

Я немного ослабил данные о занятости и наткнулся на подход na.approx в пакете зоопарка. Данные представляют собой процент от общей занятости в правительстве, и я полагал, что приблизительная оценка будет заключаться в том, чтобы посмотреть на тенденции изменения между государством и местным правительством. Они должны добавить к одному.

        State % Local %
2001    na  na
2002    na  na
2003    na  na
2004    0.118147539 0.881852461
2005    0.114500321 0.885499679
2006    0.117247083 0.882752917
2007    0.116841331 0.883158669

Я использую настройку сплайна, которая позволяет оценивать начальные значения

z <- zoo(DF2,1:7)    
d<-na.spline(z,na.rm=FALSE,maxgap=Inf)

Что дает вывод:

State % Local %
0.262918013 0.737081987
0.182809891 0.817190109
0.137735231 0.862264769
0.118147539 0.881852461
0.114500321 0.885499679
0.117247083 0.882752917
0.116841331 0.883158669

Отлично, верно? Что меня удивляет, так это то, что приблизительные значения na равны 1 (что я и хочу, но неожиданно!), Но в документации для na.approx говорится, что каждый столбец выполняется отдельно, по столбцам. Я что-то пропустил? Мои деньги за неправильное прочтение документации

1 Ответ

2 голосов
/ 07 февраля 2011

Я считаю, что это просто случайное свойство линейных наименьших квадратов. Наклоны от обеих регрессий суммируются до нуля, в результате ограничения, что сумма ряда равна единице; и перехватывает сумму в один. Следовательно, установленные значения обеих регрессий в любой момент времени равны единице.

РЕДАКТИРОВАТЬ: немного больше объяснений.
у1 = а + бета * т + эпсилон
у2 = 1-у1 = (1-а) + (- бета) * т - эпсилон
Поэтому при запуске OLS сумма перехватов будет равна единице, а уклоны - нулю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...