Wie man Logical Vektoren als Indizes in R Verwenden

Die Indexfunktion in R nimmt nicht nur numerische Vektoren als arguments- es funktioniert auch mit logischen Vektoren. Sie können diese logischen Vektoren verwenden sehr effizient einige Werte von einem Vektor zu wählen.

Wenn Sie einen logischen Vektors zu indizieren verwenden, gibt R einen Vektor mit nur den Werten, für die die logische Vektor ist WAHR. Zur Veranschaulichung nehmen wir an, Sie haben zwei Vektoren, die die Anzahl der Körbe, die Oma und ihre Freundin Geraldine erzielte in den sechs Spielen dieser Basketball-Saison enthält:

> baskets.of.Granny lt; - c (12,4,4,6,9,3)> baskets.of.Geraldine lt; - c (5,3,2,2,12,9)

Verwenden Sie einen logischen Vektor, das beste, zu sagen, die Spiele, in denen hat Granny mehr als Geraldine tat. Wenn Sie wissen wollen, wie viele Körbe Granny in diesen Spielen erzielte, können Sie diesen Code verwenden:

> Baskets.of.Granny [the.best] [1] 12 5 6

Dieses Konstrukt wird häufig verwendet, nur Werte zu halten, die eine bestimmte Anforderung zu erfüllen. Wenn Sie behalten möchten, werden nur die Werte größer als 2 in den Vektor x, Sie konnte, dass mit dem folgenden Code tun:

> x lt; - c (3, 6, 1, NA, 2)> x [x> 2] [1] 3 6 NA

Warten Sie - was ist das N / A tun es Wert? Machen Sie einen Schritt zurück und schauen Sie sich das Ergebnis von x> 2:

> X> 2 [1] TRUE TRUE FALSE FALSE NA

Wenn Sie einen fehlenden Wert in Ihrem Vektor, jeder Vergleich Renditen N / A für diesen Wert.

Mag sein, dass dies scheint N / A Übersetzung WAHR, aber das ist nicht der Fall. Wenn Sie geben N / A als Wert für den Index, stellt R N / A an diesem Ort als auch. So, in diesem Fall hält R die ersten und zweiten Werte der x, fällt die dritte, fügt einen fehlenden Wert und fällt den letzten Wert von x auch.

Menü