Я хотел бы создать дихотомическую переменную, которая сообщает мне, дал ли участник один и тот же ответ на каждый из 10 вопросов. Каждая строка является участником, и я хочу написать простой скрипт для создания этой новой переменной/вектора в моем кадре данных. Например, если мои данные выглядят как первые 6 столбцов, то я пытаюсь создать 7-й.Как я могу написать скрипт R для проверки прямой подкладки; то есть, для любой заданной строки все значения в наборе столбцов имеют одинаковое значение.
ID Item1 Item2 Item3 Item4 Item5 | AllSame
1 5 5 5 5 5 | Yes
2 1 3 3 3 2 | No
3 2 2 2 2 2 | Yes
4 5 4 5 5 5 | No
5 5 2 3 5 5 | No
Я видел решения на этом множестве, сравнить один столбец в другой, например, здесь с ifelse(data$item1==data$item2,1,ifelse(dat$item1==data$item3,0,NA))
, но у меня есть 10 колонок в моем фактическом наборе данных и я полагаю, там должен быть лучше, чем проверять все 10 друг против друга. Я также мог бы создать переменную aa, которая подсчитывает, сколько равных 1, а затем выполнить тест, если счетчик совпадает с числом столбцов, но с 7 возможными ответами в данных еще раз это выглядит очень нерешительно, и я надеясь, что у кого-то есть лучшее решение. Спасибо!
Возможно, лучше в stackoverflow, так как это программирование, а не статистика. – Henry
Как вы хотите, чтобы он вел себя, если в одной строке есть все значения «NA»? –
Возможный дубликат [Проверка на равенство среди всех элементов одного вектора] (http://stackoverflow.com/questions/4752275/test-for-equality-among-all-elements-of-a-single-vector) –