In questo tutorial, vedremo come restituire l'indice di un particolare elemento in vettore, elenco e in dati di dati.
Esistono due funzioni utili per trovare un indice di particolarità in base alla condizione o all'espressione.
Ne discuteremo uno per uno in ogni struttura dei dati.
Quale funzione ()
La funzione di quale () viene utilizzata per restituire l'indice di un elemento in base alla condizione o all'espressione specificata al suo interno.
Sintassi
Quale (condizione/espressione)
Prende la condizione o l'espressione come parametro.
È anche possibile specificare le molteplici condizioni al suo interno.
Esempio 1
In questo esempio, creiamo un vettore con 10 elementi numerici e:
- Restituire l'indice di 45 applicando la condizione - vector_object == 45.
- Restituire gli indici di elementi che sono superiori a 90 applicando la condizione - vector_object> 90.
- Restituire gli indici di elementi che sono superiori a 90 e pari a 95 applicando la condizione - vector_object> 90 e vector_object == 95.
#Crea vettoriale per frutti
Frutti = C (23,45,67,8,90,123,45,95,789,54)
Stampa (frutta)
#return indice per valore è 45
Stampa (che (frutti == 45))
#Restituzione degli indici per valori superiori a 90
Stampa (che (frutti> 90))
#RETURN indici per valori superiori a 90 e pari a 95
Stampa (che (frutti> 90 e frutti == 95))
Risultato
Per la prima condizione, alle 2a e 7 ° posizioni, 45 si verificano.
Per la seconda condizione, alla 6a, 8a e 9a posizioni, i valori sono superiori a 90. Per la terza condizione, all'ottava posizione, il valore è maggiore di 90 ed è pari a 95.
Esempio 2
In questo esempio, creiamo un elenco con 10 elementi numerici e:
- Restituire l'indice di 45 applicando la condizione - list_object == 45
- Restituire gli indici di elementi che sono superiori a 90 applicando la condizione - list_object> 90.
- Restituisce gli indici di elementi che sono superiori a 90 e pari a 95 applicando le condizioni - List_Object> 90 e List_Object == 95.
#crea elenco per frutti
Frutti = elenco (23,45,67,8,90,123,45,95,789,54)
#return indice per valore è 45
Stampa (che (frutti == 45))
#Restituzione degli indici per valori superiori a 90
Stampa (che (frutti> 90))
#RETURN indici per valori superiori a 90 e pari a 95
Stampa (che (frutti> 90 e frutti == 95))
Risultato
Per la prima condizione, alle 2a e 7 ° posizioni, 45 si verificano.
Per la seconda condizione, alla 6a, 8a e 9a posizioni, i valori sono superiori a 90. Per la terza condizione, all'ottava posizione, il valore è maggiore di 90 e pari a 95.
Esempio 3
In questo esempio, creiamo un frame dati con 10 elementi numerici in entrambe le colonne e:
- Restituire l'indice di 45 applicando la condizione - market_id (colonna) == 45.
- Restituire gli indici di elementi che sono superiori a 90 applicando la condizione - market_id (colonna)> 90.
- Restituisce gli indici di elementi superiori a 90 e pari a 95 applicando le condizioni - Market_id (colonna)> 90 e market_id (colonna) == 95.
- Restituire l'indice di 45 applicando la condizione - market_area (colonna) == 45.
- Restituire gli indici di elementi che sono superiori a 90 applicando la condizione - market_area (colonna)> 90.
- Restituire gli indici di elementi che sono superiori a 90 e pari a 95 applicando le condizioni - Market_area (colonna)> 90 e market_id (colonna) == 95.
#Crea DataFrame per frutti
Frutti = dati.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)))))
Stampa (frutta)
#return indice per valore è 45 nella colonna Market_id
Stampa (che (frutti $ market_id == 45))
Indici di ritorno per valori superiori a 90 nella colonna Market_id
Stampa (che (frutti $ market_id> 90))
#RETURN indici per valori superiori a 90 e pari a 95 nella colonna Market_id
Stampa (che (frutti $ market_id> 90 e frutta $ market_id == 95))
#return indice per valore è 45 nella colonna Market_Area
Stampa (che (frutti $ market_area == 45))
Indici di ritorno per valori superiori a 90 nella colonna Market_Area
Stampa (che (frutti $ market_area> 90))
#RETURN indici per valori superiori a 90 e pari a 95 nella colonna Market_Area
Stampa (che (frutti $ market_area> 90 e frutti $ market_area == 95))
Risultato
Tutti gli indici sono stati restituiti in base alla condizione. Ma in quinta condizione, non esiste alcun elemento. Quindi, è tornato a Integer (0).
Funzione match ()
La funzione Match () viene utilizzata per restituire l'indice di un elemento in base al valore specificato come primo parametro e il secondo parametro è il nome dell'oggetto. Se un elemento non viene trovato, tornerà a NA.
Sintassi
Match (elemento, oggetto)
Dove l'oggetto si riferisce al vettore, all'elenco e al telaio di dati.
Esempio 1
In questo esempio, creiamo un vettore di frutta con 10 elementi e verifichiamo 45, 90 e 960.
#Crea vettoriale per frutti
Frutti = C (23,45,67,8,90,123,45,95,789,54)
Stampa (frutta)
#return indice per valore è 45
Stampa (Match (45, Fruits))
#return indice per valore è 90
Stampa (Match (90, Fruits))
#return indice per valore è 960
Stampa (Match (960, Fruits))
Risultato
Possiamo vedere che 45 sono disponibili nella seconda posizione, 90 è disponibile in 5a posizione e 960 non è disponibile. Quindi ha restituito Na.
Esempio 2
In questo esempio, creiamo un elenco di frutti con 10 elementi e verifichiamo 45, 90 e 960.
#crea elenco per frutti
Frutti = elenco (23,45,67,8,90,123,45,95,789,54)
#return indice per valore è 45
Stampa (Match (45, Fruits))
#return indice per valore è 90
Stampa (Match (90, Fruits))
#return indice per valore è 960
Stampa (Match (960, Fruits))
Risultato
Possiamo vedere che 45 sono disponibili nella seconda posizione, 90 è disponibile in 5a posizione e 960 non è disponibile. Quindi ha restituito Na.
Esempio 3
In questo esempio, creiamo un frame di dati di frutta che ha una colonna Market_id con 10 elementi e controllando 45, 90 e 960 in quella colonna.
#Crea DataFrame per frutti
Frutti = dati.frame (market_id = c (23,45,67,8,90,123,45,95,789,54)))
Stampa (frutta)
#return indice per valore è 45 nella colonna Market_id
Stampa (Match (45, frutta $ market_id))
#return indice per valore è 90 nella colonna Market_id
Stampa (Match (90, frutta $ market_id))
#return indice per valore è 960 nella colonna Market_id
Stampa (Match (960, frutta $ market_id))
Risultato
Possiamo vedere che 45 sono disponibili nella seconda posizione, 90 è disponibile in 5a posizione e 960 non è disponibile. Quindi ha restituito NA nella colonna Market_id.
Conclusione
In questo tutorial R, abbiamo visto come restituire un indice usando le funzioni di Wha () e Match (). Quale funzione () restituisce l'indice/indici prendendo la condizione o l'espressione come parametro. Se la condizione fallisce, ritorna su Integer (0). Mentre la funzione Match () prende un valore e restituisce l'indice se viene trovata, altrimenti NA viene restituita. Per tutte queste funzioni, abbiamo fornito gli esempi su vettore, elenco e telaio dati.