Учет количества экземпляров условия в строке R [дубликаты]
На этот вопрос уже есть ответ:
Как посчитать частоту строки для каждой строки в R 2 ответаУ меня есть большой файл, в котором первый столбец является идентификатором, а остальные 1304 столбца являются генотипами, как показано ниже.
rsID sample1 sample2 sample3...sample1304
abcd aa bb nc nc
efgh nc nc nc nc
ijkl aa ab aa nc
Я хотел бы посчитать количество значений "nc" в строке и вывести результат этого в другой столбец, чтобы я получил следующее:
rsID sample1 sample2 sample3...sample1304 no_calls
abcd aa bb nc nc 2
efgh nc nc nc nc 4
ijkl aa ab aa nc 1
Табличная функция считает частоты на столбец, а не на строку, и если я перенесу данные для использования в табличной функции, мне понадобится файл, который будет выглядеть следующим образом:
abcd aa[sample1]
abcd bb[sample2]
abcd nc[sample3] ...
abcd nc[sample1304]
efgh nc[sample1]
efgh nc[sample2]
efgh nc[sample3] ...
efgh nc[sample1304]
С этим форматом я бы получил следующе
ID nc aa ab bb
abcd 2 1 0 1
efgh 4 0 0 0
Кто-нибудь имеет представление о простом способе получения частот по строкам? Я пытаюсь это прямо сейчас, но это займет довольно много времени для запуска:
rsids$Number_of_no_calls <- apply(rsids, 1, function(x) sum(x=="NC"))