как рассчитать сумму баллов только для предметов, где NA <50% - PullRequest
0 голосов
/ 23 мая 2018

Я довольно новичок в R и пытаюсь подсчитать подсчеты для психологических тестов (например, PedsQL) и не знаю, как создать подсчеты, соблюдая следующие условия от авторов относительно NA:

"Если более 50% элементов отсутствуют, баллы по шкале вычислять не следует. Если 50% или более элементов выполнено: вменяют среднее значение завершенных элементов по шкале."

Например, одним подкорком является физическое измерение с 8 элементами:

d$pedsql_phys = (d$pedsql_1 + d$pedsql_2 + d$pedsql_3 + d$pedsql_4 + d$pedsql_5 + d$pedsql_6 + d$pedsql_7 + d$pedsql_8)/8

Я пытался использовать функцию scoreItems пакета psych, но она не работала.Возможно, for-if-loop будет лучше, однако я не знаю, как это сделать.У вас есть идеи, как решить эту проблему?

1 Ответ

0 голосов
/ 23 мая 2018

Попробуйте, где DF - фрейм входных данных:

ifelse(rowSums(is.na(DF)) > ncol(DF)/2, NA, rowMeans(DF, na.rm = TRUE))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...