Как я могу обратиться к `MASS :: polr`, создавая нули через преобразование журнала и не сходясь - PullRequest
0 голосов
/ 20 апреля 2020

Я пытаюсь использовать MASS:polr для создания модели порядковой регрессии, но когда я запускаю приведенный ниже код, он возвращает Error in svd(X): infinite or missing values in 'x'. После двойной проверки, нет ли пропущенных или бесконечных значений, я покопался и обнаружил, что преобразование журнала является частью этого процесса, поэтому я запустил log(as.numeric$data$Value)) и увидел, что 4 в моих исходных данных возвращается как нули.

Кто-нибудь знает, как с этим работать? и сделать модель сходится? Я смог заставить его работать с похожими данными и построением модели, но не повезло.

Спасибо, легенды!

    library(MASS)

data <- tibble::tribble(
          ~Group,  ~Time, ~Value,
  "Intervention",  "Pre",      5,
  "Intervention",  "Pre",      5,
  "Intervention",  "Pre",      5,
  "Intervention",  "Pre",      5,
  "Intervention",  "Pre",      5,
  "Intervention",  "Pre",      4,
       "Control",  "Pre",      5,
       "Control",  "Pre",      6,
       "Control",  "Pre",      5,
       "Control",  "Pre",      5,
       "Control",  "Pre",      5,
       "Control",  "Pre",      5,
       "Control",  "Pre",      4,
       "Control",  "Pre",      4,
  "Intervention", "Post",      8,
  "Intervention", "Post",      8,
  "Intervention", "Post",      8,
  "Intervention", "Post",      8,
  "Intervention", "Post",      8,
  "Intervention", "Post",      9,
       "Control", "Post",      8,
       "Control", "Post",      8,
       "Control", "Post",      7,
       "Control", "Post",      8,
       "Control", "Post",      7,
       "Control", "Post",      8,
       "Control", "Post",      8,
       "Control", "Post",      7
  )


model <- polr(factor(Value) ~ Group + Time + Group*Time, 
                 data = data,
                 Hess = TRUE)
...