Совместное использование логических функций и строк - PullRequest
0 голосов
/ 27 октября 2018

Я пытаюсь понять код R, который я унаследовал (см. Ниже).

sel <- which(rowSums(m3T3L1mRNA.tmp[,c(2,4)] == 20) != 2)

enter image description here

Выходные данные этого кода по существу исключают все строки из этой таблицы (есть тысячи строк, только первые 5 были показаны), которые имеют значение 20 (которое в этой таблице равно NA).

Код работает нормально, но у меня возникают проблемы с интерпретацией кода. Как я понимаю, код просит получить rowSum строк, которые содержат значение «20» в столбцах 2 и 4 (то есть 40), и выбрать те, которые не суммируют до 2.

Откуда берется значение 2? Разве это не должно быть так, как показано ниже для того, чтобы код работал так, как мне кажется?

sel <- which(rowSums(m3T3L1mRNA.tmp[,c(2,4)] == 20) != 40)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...