Применить функцию в R генерирует ошибку отсутствующего значения - PullRequest
0 голосов
/ 25 февраля 2019

Я признаю, что я новичок в 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 (), нет пустых значений.Кто-нибудь может помочь?

...