Cómo utilizar vectores lógicos como índices en r

La función de índice en I no toma sólo vectores numéricos como arguments- también trabaja con vectores lógicos. Puede utilizar estos vectores lógicos de manera muy eficiente para seleccionar algunos valores de un vector.

Si utiliza un vector lógico índice, R devuelve un vector con sólo los valores por los que el vector es lógico CIERTO. Para ilustrar, supongamos que tiene dos vectores que contienen el número de canastas que la abuela y su amiga Geraldine anotó a los seis partidos de esta temporada de baloncesto:

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

Utilice un vector lógico, el mejor, para decirte los juegos en los que la abuela anotado más de Geraldine hizo. Si usted quiere saber cuántas canastas Granny anotó en esos juegos, puede utilizar este código:

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

Esta construcción a menudo se utiliza para mantener sólo los valores que cumplen un cierto requisito. Si desea mantener sólo los valores mayores que 2 en el vector X, usted podría hacer eso con el siguiente código:

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

Espera - ¿qué es eso N / A valor haciendo allí? Dar un paso atrás y mirar el resultado de x> 2:

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

Si usted tiene un valor perdido en su vector, cualquier devolución de comparación N / A para ese valor.

Puede parecer que este N / A se traduce en CIERTO, pero eso no es el caso. Si le das N / A como un valor para el índice, R pone N / A en ese lugar también. Por lo tanto, en este caso, R mantiene el primer y segundo valores de X, cae el tercero, añade un valor que falta, y deja caer el último valor de X así como.




» » » » Cómo utilizar vectores lógicos como índices en r