Я признаю, что я новичок в R, поэтому заранее извиняюсь за основной вопрос.Я следую этому руководству, пытаясь выполнить логарифмический линейный анализ данных с тремя или более факторами, используя мой собственный набор данных: https://mgimond.github.io/Stats-in-R/ChiSquare_test.html
Я застрял в той части, где вы создаете матрицу из своего набора данных, используяфункция «Применить».У меня есть три фактора:
- ONS_ONL (независимо от местоположения человека ONS или ONL)
- OffVar (независимо от того, прошел ли человек курс в том же месте или вне его)
- FailVar (независимо от того, провалил ли человек курс или прошел его курс)
Запуск str () для моих данных приводит к следующему:
> str(data)
'data.frame': 775 obs. of 3 variables:
$ ONS_ONL: Factor w/ 2 levels "ONL","ONS": 1 2 1 2 2 2 1 2 1 1 ...
$ OffVar : Factor w/ 2 levels "N","Y": 1 2 1 2 2 2 1 1 1 1 ...
$ FailVar: Factor w/ 2 levels "N","Y": 1 1 1 1 1 1 1 1 1 1 ...
И открытие таблицы для просмотрапроизводит следующее: Нажмите, чтобы просмотреть таблицу
В руководстве рекомендуется использовать «применить» для преобразования ваших данных в матрицу данных, которая должна агрегировать подсчеты по каждому фактору.Но я получаю этот результат при попытке запустить его:
matrix <- apply(data,c(1:3),sum)
Error in if (d2 == 0L) { : missing value where TRUE/FALSE needed
Я искал вокруг, но не могу найти причину этой ошибки.Кажется, что в данных, основанных на функции str (), нет пустых значений.Кто-нибудь может помочь?