Indexzugriff mit logischen Vektoren

Als Alternative zum Indexzugriff über einen Integervektor können Sie auch einen logischen Vektor zum Indizieren nehmen. Als einfaches Beispiel konstruieren wir uns einen Vektor aus abwechselnden Wahr- und Falsch-Werten, den wir dann auf den Vektor v anwenden:

> rep(c(TRUE, FALSE), 10)
 [1]  TRUE FALSE  TRUE FALSE  TRUE FALSE  TRUE FALSE  TRUE FALSE
[11]  TRUE FALSE  TRUE FALSE  TRUE FALSE  TRUE FALSE  TRUE FALSE
>
> v[rep(c(TRUE, FALSE), 10)]
 [1] 100 102 104 106 108 110 112 114 116 118

Oft ist es nützlich, sich einen logischen Vektor aus dem Vektor selbst berechnen zu lassen:

> # Simples Beispiel: das Element holen, das gleich 103 ist. > v[v == 103] > > # Interessanteres Beispiel: Vielfache von 3. > v[v %% 3 == 0] [1] 102 ...

Get R in a Nutshell now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.