Zählen der Instanzen einer Bedingung pro Zeile R [duplizieren]

Diese Frage hat hier bereits eine Antwort:

Wie die Häufigkeit einer Zeichenfolge für jede Zeile in R @ gezählt wi 2 Antworten

Ich habe eine große Datei mit der ersten Spalte IDs und den restlichen 1304 Spalten Genotypen wie unten.

rsID    sample1    sample2    sample3...sample1304
abcd    aa         bb         nc        nc
efgh    nc         nc         nc        nc 
ijkl    aa         ab         aa        nc 

Ich möchte die Anzahl der "nc" -Werte pro Zeile zählen und das Ergebnis in einer anderen Spalte ausgeben, sodass ich Folgendes erhalte:

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

Die Tabellenfunktion zählt die Häufigkeiten pro Spalte und nicht pro Zeile. Wenn ich die in der Tabellenfunktion zu verwendenden Daten transponiere, muss die Datei folgendermaßen aussehen:

abcd         aa[sample1]
abcd         bb[sample2]
abcd         nc[sample3] ...
abcd         nc[sample1304]
efgh         nc[sample1]
efgh         nc[sample2]
efgh         nc[sample3] ...
efgh         nc[sample1304]

Mit diesem Format würde ich folgendes bekommen, was ich will:

ID    nc   aa   ab   bb
abcd  2    1    0    1
efgh  4    0    0    0

Hat jemand eine Idee für einen einfachen Weg, um Frequenzen nach Zeilen zu erhalten? Ich versuche dies gerade, aber es dauert ziemlich lange, bis es ausgeführt wird:

rsids$Number_of_no_calls <- apply(rsids, 1, function(x) sum(x=="NC"))