Hallo vestery,
es ist Dein erster Beitrag und auf den sollst Du auch gleich eine gute Antwort bekommen. In Zukunft versuche bitte, Beispieldaten zur Verfügung zu stellen, mit denen man mögliche Lösungen erproben und auch erklären kann. Das könnte in Deinem Beispiel so aussehen:
Code: Alles auswählen
bsp <- data.frame(V1=c(1,1,1,0.5), V2=c(1,1,0,0.5), V3=c(1,0,0,0.5))
print(bsp)
Eine mögliche Antwort auf Deine Frage würde dann so aussehen:
apply(bsp,2 ... wendet eine Funktion auf jede Zeile von
bsp an. Diese Funktion betrachtet jede Zeile als Variable x.
x==1 vergleich jeden einzelnen Wert mit 1.0 und
sum zählt dann, wie oft das wahr ist. In
einsen steht also die Zahl der Einsen pro Reihe.
Aber Vorsicht: Vergleiche von floating point Zahlen mit
== sind sehr sehr gefährlich, weil manches wie eine 1 aussieht, aber intern als 0.99999999999999999999 hinterlegt ist. Praktisch sieht das dann so aus:
( mehr darüber hier:
http://www.michael-puff.de/Programmieru ... omma.shtml )
Es kann also Sinn machen, nach anderen Lösungen als dem Vergleich einer Fließkommazahl mit einer Konstanten zu suchen, dafür müsstest Du aber mehr Kontext erklären.
LG,
Bernhard
PS: Cool, dass Du im ersten Beitrag schon die code-Tags gefunden hast.