Jak porównać dwa wektory w r (z przykładami)
Aby porównać dwa wektory w R, możesz użyć następującej podstawowej składni:
#check if two vectors are identical identical(vector_1, vector_2) #display items that are in both vectors intersect(vector_1, vector_2) #display items that are only in first vector, but not in second vector setdiff(vector_1, vector_2)
Poniższe przykłady pokazują, jak używać tej składni w praktyce.
Przykład 1: Sprawdź, czy dwa wektory są takie same
Poniższy kod pokazuje, jak użyć funkcji identyczne() do sprawdzenia, czy dwa wektory są identyczne:
#definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')
#check if two vectors are identical
identical(vector_1, vector_2)
[1] FALSE
Te dwa wektory nie są identyczne, dlatego zwracana jest wartość FAŁSZ .
Przykład 2: Znajdź elementy istniejące w obu wektorach
Poniższy kod pokazuje, jak używać funkcji intersect() do wyświetlania elementów istniejących w obu wektorach:
#definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')
#display items that exist in both vectors
intersect(vector_1, vector_2)
[1] “Bob” “Carl” “Doug”
Pokazano trzy elementy występujące w obu wektorach.
Możemy również użyć funkcji długości() , jeśli chcemy po prostu wiedzieć, ile elementów istnieje w dwóch wektorach:
#find how many items exist in both vectors
length(intersect(vector_1, vector_2))
[1] 3
W obu wektorach istnieją trzy elementy.
Przykład 3: Znajdź elementy, które istnieją tylko w jednym wektorze
Poniższy kod pokazuje, jak używać funkcji setdiff() do wyświetlania elementów istniejących w pierwszym wektorze, ale nie w drugim:
#definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')
#display items that exist in first vector, but not in second vector
setdiff(vector_1, vector_2)
[1] “Andy”
W pierwszym wektorze jest dokładnie jeden element, który nie istnieje w drugim wektorze.
Możemy odwrócić oba wektory, aby zidentyfikować elementy, które istnieją w drugim wektorze, ale nie w pierwszym:
#definevectors
vector_1 <- c('Andy', 'Bob', 'Carl', 'Doug')
vector_2 <- c('Bob', 'Carl', 'Doug', 'Ethan', 'Fred')
#display items that exist in second vector, but not in first vector
setdiff(vector_2, vector_1)
[1] “Ethan” “Fred”
W drugim wektorze istnieją dwa elementy, których nie ma w pierwszym.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:
Jak porównać dwie kolumny w R
Jak porównać ciągi w R
Jak dodać wartości do wektora za pomocą pętli w R