Ошибка в коде REML при выполнении уравнения линейной регрессии - PullRequest
0 голосов
/ 10 ноября 2018

Я пытаюсь запустить этот код:

lm_height <-lmer (Height_cm_JUN ~ ENTRY + (1 | REP), данные = ASM_HEIGHT18_CL, REML = FALSE) </p>

Но я получаю эту ошибку:

Ошибка в mkRespMod (fr, REML = REMLpass): ответ должен быть числовым

Я не понимаю, какая часть моих данных не является «числовой», вот краткое изложение этого:

$ УЧАСТОК: int 1 2 3 4 5 6 7 8 9 10 ...

$ ROW: int 1 1 1 1 1 1 1 1 1 1 ...

$ RANGE: int 1 2 3 4 5 6 7 8 9 10 ...

$ REP: int 1 1 1 1 1 1 1 1 1 1 ...

$ ENTRY: int 989 965 931 936 983 926 969 883 911 897 ...

....

$ Height_cm_JUN: Коэффициент с 30 уровнями "", "55", "56", "58", ..: 13 21 17 20 27 17 20 22 15 12 ...

Может кто-нибудь дать мне совет, что я делаю неправильно и как это исправить. Я ценю это --- большое спасибо!

1 Ответ

0 голосов
/ 10 ноября 2018

Ваш ответ - переменная Height_cm_JUN, которая должна быть numeric (как указано в сообщении об ошибке), но вместо этого это переменная factor. Вы можете преобразовать их в числовое значение, используя as.numeric в сочетании с as.character (так как вам нужны метки вашего factor):

ASM_HEIGHT18_CL$Height_cm_JUN <- as.numeric(as.character(ASM_HEIGHT18_CL$Height_cm_JUN))
...