Jak korzystać z funkcji match() w r (z przykładami)


Funkcja match() w R zwraca pozycję pierwszego dopasowania pomiędzy dwoma obiektami.

Ta funkcja wykorzystuje następującą podstawową składnię:

 match(object1, object2)

Poniższe przykłady pokazują, jak używać tej funkcji w różnych scenariuszach.

Przykład 1: Dopasowywanie wartości w wektorze

Poniższy kod pokazuje, jak użyć funkcji match() do znalezienia pierwszego wystąpienia określonej wartości w wektorze:

 #define value to look for in vector
value <- 10

#define vector of values
vector1 <- c(8, 9, 1, 10, 13, 15)

#find first occurrence of 10
match(value, vector1)

[1] 4

To mówi nam, że wartość 10 pojawia się najpierw na 4. pozycji wektora.

Pamiętaj, że jeśli pasuje wiele wartości, zwrócona zostanie tylko pozycja pierwszego dopasowania.

Na przykład następujący wektor ma dwie wartości równe 10, ale zwracana jest tylko pozycja pierwszych 10:

 #define value to look for in vector
value <- 10

#define vector of values with multiple '10' values
vector1 <- c(8, 9, 1, 10, 10, 10)

#find first occurrence of 10
match(value, vector1)

[1] 4

Wartość 10 pojawia się na pozycjach 4, 5 i 6, ale zwracana jest tylko pozycja 4 .

Przykład 2: Dopasowywanie wartości w dwóch wektorach

Poniższy kod pokazuje, jak użyć funkcji match() , aby znaleźć pierwsze wystąpienie wartości w jednym wektorze w innym wektorze:

 #define vectors of values
vector1 <- c(1, 2, 3, 4, 5, 6)
vector2 <- c(8, 6, 1, 10, 10, 15)

#find first occurrence of values in vector1 within vector2
match(vector1, vector2)

[1] 3 NA NA NA NA 2

Oto jak zinterpretować wynik:

  • Pierwsze wystąpienie wartości 1 w wektorze 1 następuje na pozycji 3 wektora 2.
  • Wartość 2 w wektorze 1 nigdy nie pojawia się w wektorze 2.
  • Wartość 3 w wektorze 1 nigdy nie pojawia się w wektorze 2.
  • Wartość 4 w wektorze 1 nigdy nie pojawia się w wektorze 2.
  • Wartość 5 w wektorze 1 nigdy nie pojawia się w wektorze 2.
  • Pierwsze wystąpienie wartości 6 w wektorze 1 następuje na pozycji 2 wektora 2.

Pamiętaj, że możemy również określić inną wartość do użycia w przypadkach, gdy nie ma dopasowania.

Na przykład możemy zwrócić wartość 0 zamiast NA:

 #define vectors of values
vector1 <- c(1, 2, 3, 4, 5, 6)
vector2 <- c(8, 6, 1, 10, 10, 15)

#find first occurrence of values in vector1 within vector2
match(vector1, vector2, nomatch= 0 )

[1] 3 0 0 0 0 2

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak korzystać z innych typowych funkcji w R:

Jak korzystać z funkcji podsumowania() w R
Jak korzystać z funkcji replikacji () w R
Jak korzystać z funkcji gsub() w R
Jak korzystać z funkcji par() w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *