Использование 'ivtobit' в R - PullRequest
       0

Использование 'ivtobit' в R

0 голосов
/ 07 января 2020

Я хотел бы сделать что-то похожее на "ivtobit" Статы (используя инструментальные переменные с регрессией Тобита) в R. После некоторого поиска в Google я нашел эту ссылку с исходным кодом на Github: https://rdrr.io/github/bolimorales/RegUtils/man/ivtobit.html.

Допустим, я хотел бы применить эту функцию к следующему набору данных:

panelID = c(1:50)   
year= c(2001:2010)
country = c("NLD", "GRC", "GBR")
n <- 2
library(data.table)
set.seed(123)
DT <- data.table(panelID = rep(sample(panelID), each = n),
                 country = rep(sample(country, length(panelID), replace = T), each = n),
                 year = c(replicate(length(panelID), sample(year, n))),
                 some_NA = sample(0:5, 6),                                             
                 some_NA_factor = sample(0:5, 6),         
                 norm = round(runif(100)/10,2),
                 Income = round(rnorm(10,-5,5),2),
                 Happiness = sample(10,10),
                 Sex = round(rnorm(10,0.75,0.3),2),
                 Age = sample(100,100),
                 Educ = round(rnorm(10,0.75,0.3),2))        
DT [, uniqueID := .I]                                                                        # Creates a unique ID     
DT[DT == 0] <- NA 

Функция имеет следующие параметры

ivtobit <- function(formula, instruments, data, subset, na.action = NULL,
weights, offset, contrasts = NULL, model = TRUE, y = TRUE, x = FALSE,
left=0, right = Inf, method = "BHHH", ...)

Для простоты я попытался следующее:

ivtobit.result <- ivtobit (Happiness ~ Sex + Age + Educ, Educ ~ Sex + Age + Income + some_NA, data = DT, na.action = na.omit, left=1, right = 10, method = "twostep")

Но затем выдает ошибку:

Error in unique(exogenous) : 
  argument "exogenous" is missing, with no default

Но когда я смотрю в исходный код, я даже не могу найти unique(exogenous).

Может кто-нибудь помочь мне объяснить, что здесь происходит и как заставить это работать?

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