R 벡터에서 요소의 인덱스 찾기
벡터는 R의 기본 데이터 구조 중 하나입니다. 요소를 시퀀스에 저장하는 데 사용되지만 목록과 달리 벡터의 모든 요소는 동일한 데이터 유형이어야합니다.
벡터의 모든 요소에는 특정 위치 또는 인덱스가 있습니다. ‘which()‘및 match()
와 같은 R의 내장 함수를 사용하여 모든 요소의 색인을 알 수 있습니다.
이 튜토리얼에서는 다음 벡터의 요소7
과8
의 인덱스를 찾습니다.
x <- c(5,6,8,9,7,5,7,8)
which()
함수를 사용하여 R에서 요소의 인덱스 찾기
which()
함수는 논리 벡터 (이 경우==
)와 일치하는 요소의 색인 (또는 색인)이있는 벡터를 반환합니다.
예를 들면 :
x <- c(5,6,8,9,7,5,7,8)
which(x == 7)
[1] 5 7
벡터에 7
이 두 번 있으므로 두 위치가 모두 반환됩니다. 7
의 첫 번째 인덱스를 원한다면 아래와 같이 간단하게 할 수 있습니다.
which(x == 7)[1]
[1] 5
또한which()
함수를 사용하여 일치하는 모든 요소에 대해True
값이있는 벡터를 반환하는%in%
매개 변수를 사용하여 여러 요소의 색인을 찾을 수 있습니다.
which(x %in% c(7,8))
[1] 3 5 7 8
보시다시피 7
과 8
의 모든 위치가 반환됩니다.
match()
함수를 사용하여 R에서 요소의 인덱스 찾기
match()
함수는which()
함수와 매우 유사합니다. 요소의 첫 번째 인덱스 (요소가 우리의 경우와 같이 둘 이상의 위치에있는 경우)를 가진 벡터를 반환하며which()
함수보다 빠른 것으로 간주됩니다.
x <- c(5,6,8,9,7,5,7,8)
match(7,x)
[1] 5
또한 아래와 같이 여러 요소의 첫 번째 인덱스를 찾는 데 사용할 수 있습니다.
x <- c(5,6,8,9,7,5,7,8)
match(c(7,8),x)
[1] 5 3
match()
함수는7
과8
의 첫 번째 위치 만 반환합니다. 이것이 바로 첫 번째 인덱스 만 필요한 상황에서match()
가 두 메서드 중 더 빠른 것으로 간주되는 이유입니다.
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn