해당 포스트는 R에서 벡터에 들어있는 양수의 개수를 카운트하는 방법에 대해 소개합니다.
INTRO
R에서 벡터(vector)는 가장 많이 다루기에 가장 중요한 자료 구조(Data Structure)입니다. 벡터(vector)를 다루는 다양한 연습을 한다면 앞으로의 R프로그래밍 역량 개발에 큰 도움이 될 것이라 생각하빈다.
아래에서는
질문
풀이
1. 벡터 생성
먼저 실수값만으로 이루어진 벡터 x
를 생성하겠습니다.
x <- c(1, -2, 3, -4, 5, -6, 7)
x
[1] 1 -2 3 -4 5 -6 7
2. 사용자 함수 생성
벡터(vector)를 입력 받으면 값이 양수인 벡터의 개수를 반환하는 사용자 함수를 생성해 보겠습니다. 벡터(vector)에서 양수(0보다 큰)를 찾는 것은 간단한 조건식을 이용하면 됩니다.
0보다 큰 값 찾기
x > 0
은 x
의 값들 중 0보다 큰 값들을 TRUE
로 리턴해 줍니다.
x > 0
[1] TRUE FALSE TRUE FALSE TRUE FALSE TRUE
조건식을 만족하는 값의 개수 세기
위 결과에서 조건식을 만족하는 값은 총 4개(TRUE
가 4개)인 것을 확인하였으며, 이것을 결과만 확인하기 위해서는 sum()
함수를 이용하면 됩니다.
sum()
함수에TRUE
나FALSE
와 같은 boolean 값을 넣으면 총TRUE
개수를 반환해 줍니다.
sum(x > 0)
[1] 4
사용자 함수 exftn3
생성
위에서 확인한 코드를 이용하여 문제에서 요구하는 사용자 함수 exftn3
를 만들어 보겠습니다. 해당 문제의 경우, 사용자 함수 내부에서 계산되어야 하는 양이 많지 않기에 return()
함수에서 즉시 계산 및 반환되도록 아래와 같이 작성할 수 있습니다.
exftn3 <- function(x) {
return(sum(x > 0))
}
exftn3(x)
[1] 4
마무리
관련 링크
[1] 네이버 지식인