Я пытаюсь понять код R, который я унаследовал (см. Ниже).
sel <- which(rowSums(m3T3L1mRNA.tmp[,c(2,4)] == 20) != 2)
![enter image description here](https://i.stack.imgur.com/FaTkz.png)
Выходные данные этого кода по существу исключают все строки из этой таблицы (есть тысячи строк, только первые 5 были показаны), которые имеют значение 20 (которое в этой таблице равно NA).
Код работает нормально, но у меня возникают проблемы с интерпретацией кода. Как я понимаю, код просит получить rowSum строк, которые содержат значение «20» в столбцах 2 и 4 (то есть 40), и выбрать те, которые не суммируют до 2.
Откуда берется значение 2? Разве это не должно быть так, как показано ниже для того, чтобы код работал так, как мне кажется?
sel <- which(rowSums(m3T3L1mRNA.tmp[,c(2,4)] == 20) != 40)