R에서 intersect() 함수를 사용하는 방법(예제 포함)


기본 R의 intersect() 함수를 사용하여 두 객체의 교차점을 찾을 수 있습니다.

“교차점”은 단순히 두 개체가 공통적으로 갖는 요소를 나타냅니다.

이 함수는 다음 기본 구문을 사용합니다.

 intersect(object1, object2)

다음 예에서는 벡터 및 데이터 프레임에 intersect() 함수를 사용하는 방법을 보여줍니다.

예 1: 벡터에 intersect() 사용

다음 코드는 R에서 두 벡터 사이의 교차점을 찾기 위해 intersect() 함수를 사용하는 방법을 보여줍니다.

 #define two vectors
x <- c(1, 4, 5, 5, 9, 12, 19)
y <- c(1, 2, 5, 5, 10, 14, 19)

#find intersection between two vectors
intersect(x,y)

[1] 1 5 19

결과에서 우리는 벡터 x와 y가 1 , 5 , 19 라는 세 가지 값을 공통으로 가지고 있음을 알 수 있습니다.

intersect() 함수는 문자 벡터에도 작동합니다.

 #define two vectors
x <- c('A', 'B', 'C', 'D', 'E')
y <- c('C', 'D', 'E', 'F')

#find intersection between two vectors
intersect(x,y)

[1] “C” “D” “E”

결과에서 벡터 x와 y에는 C , D , E 라는 세 개의 공통 문자열이 있음을 알 수 있습니다.

intersect() 함수가 작동하기 위해 두 벡터의 길이가 동일할 필요는 없습니다.

예제 2: 데이터 프레임에 intersect() 사용

두 데이터 프레임이 공통으로 갖고 있는 라인을 찾으려면 dplyr 패키지의 intersect() 함수를 사용해야 합니다.

다음 코드는 이 함수를 사용하여 두 데이터 프레임이 공통으로 갖는 행을 찾는 방법을 보여줍니다.

 library (dplyr) 

#define two data frames
df1 <- data. frame (team=c('A', 'A', 'B', 'B'),
                  dots=c(12, 20, 25, 19))

df1

  team points
1 to 12
2 to 20
3 B 25
4 B 19

df2 <- data. frame (team=c('A', 'A', 'B', 'C'),
                  dots=c(12, 22, 25, 32))

df2

  team points
1 to 12
2 to 22
3 B 25
4 C 32

#find intersection between two data frames
dplyr::intersect(df1, df2)

  team points
1 to 12
2 B 25

결과에서 데이터 프레임에 두 개의 공통 행이 있음을 알 수 있습니다.

intersect() 함수는 두 데이터 프레임 사이의 열에 동일한 값이 있는 행만 반환한다는 점에 유의하세요.

또한 length() 함수를 intersect() 함수와 함께 사용하면 두 데이터 프레임이 공통적으로 갖는 행 수를 간단하게 찾을 수 있습니다.

 #find number of rows in common between the two data frames
length(dplyr::intersect(df1, df2))

[1] 2

결과에서 우리는 두 데이터 프레임 모두 2 개의 공통 행을 가지고 있음을 알 수 있습니다.

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 기능을 사용하는 방법을 설명합니다.

R에서 Dim() 함수를 사용하는 방법
R에서 변환() 함수를 사용하는 방법
R에서swep() 함수를 사용하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다