Cómo encontrar el índice en r

Cómo encontrar el índice en r
En este tutorial R, veremos cómo devolver el índice de un elemento particular en Vector, List y en DataFrame.

Hay dos funciones que son útiles para encontrar un índice de particularidad basado en la condición o expresión.

Discutiremos uno por uno en cada estructura de datos.

Cual () función

La función que () se usa para devolver el índice de un elemento basado en la condición o expresión especificada dentro de ella.

Sintaxis

que (condición/expresión)

Toma la condición o expresión como parámetro.

También es posible especificar las múltiples condiciones dentro de él.

Ejemplo 1

En este ejemplo, creamos un vector con 10 elementos numéricos y:

  1. Devuelva el índice de 45 aplicando la condición - vector_object == 45.
  2. Devuelva los índices de elementos que son superiores a 90 aplicando la condición - vector_object> 90.
  3. Devuelva los índices de elementos que son superiores a 90 y igual a 95 aplicando la condición - Vector_object> 90 & vector_object == 95.
#cree vector para frutas
frutas = C (23,45,67,8,90,123,45,95,789,54)
Imprimir (frutas)
#El índice de valor para el valor es 45
Imprimir (que (frutas == 45))
#índices de retorno para valores superiores a 90
Imprimir (que (frutas> 90))
#índices de retorno para valores superiores a 90 e igual a 95
Imprimir (que (frutas> 90 y frutas == 95))

Resultado

Para la primera condición, en las posiciones 2 y 7, se producen 45.

Para la segunda condición, en las posiciones 6, 8 y 9, los valores son superiores a 90. Para la tercera condición, en la octava posición, el valor es mayor que 90 y es igual a 95.

Ejemplo 2
En este ejemplo, creamos una lista con 10 elementos numéricos y:

  1. Devuelva el índice de 45 aplicando la condición - list_object == 45
  2. Devuelva los índices de elementos que son superiores a 90 aplicando la condición - list_object> 90.
  3. Devuelve los índices de elementos que son superiores a 90 y igual a 95 aplicando las condiciones - List_object> 90 & list_object == 95.
#Lista de creación de frutas
frutas = lista (23,45,67,8,90,123,45,95,789,54)
#El índice de valor para el valor es 45
Imprimir (que (frutas == 45))
#índices de retorno para valores superiores a 90
Imprimir (que (frutas> 90))
#índices de retorno para valores superiores a 90 e igual a 95
Imprimir (que (frutas> 90 y frutas == 95))

Resultado

Para la primera condición, en las posiciones 2 y 7, se producen 45.

Para la segunda condición, en las posiciones 6, 8 y 9, los valores son superiores a 90. Para la tercera condición, en la octava posición, el valor es mayor que 90 e igual a 95.

Ejemplo 3
En este ejemplo, creamos un marco de datos con 10 elementos numéricos en ambas columnas y::

  1. Devolver el índice de 45 aplicando la condición - Market_id (columna) == 45.
  2. Devuelva los índices de elementos que son superiores a 90 aplicando la condición - Market_id (columna)> 90.
  3. Devuelva los índices de elementos que son superiores a 90 y igual a 95 aplicando las condiciones - Market_id (columna)> 90 & Market_id (columna) == 95.
  4. Devolver el índice de 45 aplicando la condición - Market_area (columna) == 45.
  5. Devolver los índices de elementos que son superiores a 90 aplicando la condición - Market_area (columna)> 90.
  6. Devuelve los índices de elementos que son superiores a 90 y igual a 95 aplicando las condiciones - Market_area (columna)> 90 & Market_id (columna) == 95.
#Cree DataFrame para frutas
frutas = datos.Frame (Market_id = C (23,45,67,8,90,123,45,95,789,54), Market_area = C (200,456,78,567,89,76,345,678,95,456)))
Imprimir (frutas)
El índice #return para el valor es 45 en la columna Market_id
imprimir (que (frutas $ market_id == 45))
##DICES RETURN para valores superiores a 90 en la columna Market_id
imprimir (que (frutas $ market_id> 90))
#Dices de retorno para valores superiores a 90 e igual a 95 en la columna Market_ID
Imprimir (que (frutas $ market_id> 90 & frutas $ market_id == 95))
El índice #return para el valor es 45 en la columna Market_area
imprimir (que (frutas $ market_area == 45))
#índices de retorno para valores superiores a 90 en la columna Market_area
imprimir (que (frutas $ market_area> 90))
#Dices de requisito para valores superiores a 90 e igual a 95 en la columna Market_area
Imprimir (que (frutas $ market_area> 90 y frutas $ market_area == 95)))

Resultado

Todos los índices fueron devueltos en función de la condición. Pero en la quinta condición, no existe ningún elemento. Por lo tanto, volvió al entero (0).

Función Match ()

La función coincidir () se usa para devolver el índice de un elemento basado en el valor especificado como el primer parámetro y el segundo parámetro es el nombre del objeto. Si no se encuentra un elemento, volverá a NA.

Sintaxis

Match (elemento, objeto)

Donde el objeto se refiere al vector, la lista y el marco de datos.

Ejemplo 1
En este ejemplo, creamos un vector de frutas con 10 elementos y verificación para 45, 90 y 960.

#cree vector para frutas
frutas = C (23,45,67,8,90,123,45,95,789,54)
Imprimir (frutas)
#El índice de valor para el valor es 45
Imprimir (Match (45, frutas))
El índice #return para el valor es 90
Imprimir (Match (90, frutas))
#El índice de valor para el valor es 960
Imprimir (Match (960, frutas))

Resultado

Podemos ver que 45 está disponible en la segunda posición, 90 está disponible en la quinta posición y 960 no está disponible. Entonces devolvió na.

Ejemplo 2
En este ejemplo, creamos una lista de frutas con 10 elementos y verificación para 45, 90 y 960.

#Lista de creación de frutas
frutas = lista (23,45,67,8,90,123,45,95,789,54)
#El índice de valor para el valor es 45
Imprimir (Match (45, frutas))
El índice #return para el valor es 90
Imprimir (Match (90, frutas))
#El índice de valor para el valor es 960
Imprimir (Match (960, frutas))

Resultado

Podemos ver que 45 está disponible en la segunda posición, 90 está disponible en la quinta posición y 960 no está disponible. Entonces devolvió na.

Ejemplo 3

En este ejemplo, creamos una fruta de datos de frutas que tiene una columna Market_ID con 10 elementos y verificación para 45, 90 y 960 en esa columna.

#Cree DataFrame para frutas
frutas = datos.Frame (Market_id = C (23,45,67,8,90,123,45,95,789,54))
Imprimir (frutas)
El índice #return para el valor es 45 en la columna Market_id
Imprimir (Match (45, Fruits $ Market_id))
#return El índice para el valor es 90 en la columna Market_id
Imprimir (Match (90, Fruits $ Market_id))
El índice #return para el valor es 960 en la columna market_id
Impresión (Match (960, Fruits $ Market_id))

Resultado

Podemos ver que 45 está disponible en la segunda posición, 90 está disponible en la quinta posición y 960 no está disponible. Entonces devolvió Na en la columna Market_id.

Conclusión

En este tutorial R, vimos cómo devolver un índice usando las funciones que () y Match (). La función () devuelve el índice/índices tomando la condición o expresión como parámetro. Si la condición falla, entonces vuelve al entero (0). Mientras que la función coincidir () toma un valor y devuelve el índice si se encuentra, de lo contrario se devuelve NA. Para todas estas funciones, dimos los ejemplos de Vector, List y DataFrame.