시작하기무료로 시작하기

R, 함수형으로 프로그래밍하기 (2)

interpret() 함수의 구현 예시가 이미 제공되어 있습니다. 이번 연습 문제에서는 interpret() 함수를 활용하여 벡터 안에 있는 일별 프로필 조회 수 전체 데이터를 해석하는 또 다른 함수를 작성합니다. 또한, 요청받은 경우에만 인기 있는 날의 조회 수 합계를 반환합니다. 벡터의 모든 요소를 순회할 때는 for 루프를 사용하는 것이 적합합니다. 인기 있는 날의 조회 수 합계 반환 여부는 기본값이 있는 함수 인수를 통해 구현할 수 있습니다.

이 연습은 강의의 일부입니다

중급 R

강의 보기

연습 안내

interpret_all() 함수의 템플릿을 완성하세요:

  • return_sum를 기본값이 TRUE인 선택적 인수로 만드세요.
  • for 루프 내부에서 모든 views를 순회하며, 매 반복마다 interpret(v)의 결과를 count에 더하세요. interpret(v)는 인기 있는 날에는 v를, 그 외에는 0을 반환한다는 점을 기억하세요. 동시에 interpret(v)는 출력도 수행합니다.
  • if 구문을 완성하세요:
  • return_sumTRUE이면 count를 반환하세요.
  • 그렇지 않으면 NULL을 반환하세요.

새로 정의한 함수를 linkedinfacebook 모두에 적용하여 호출하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# The linkedin and facebook vectors have already been created for you
linkedin <- c(16, 9, 13, 5, 2, 17, 14)
facebook <- c(17, 7, 5, 16, 8, 13, 14)

# The interpret() can be used inside interpret_all()
interpret <- function(num_views) {
  if (num_views > 15) {
    print("You're popular!")
    return(num_views)
  } else {
    print("Try to be more visible!")
    return(0)
  }
}

# Define the interpret_all() function
# views: vector with data to interpret
# return_sum: return total number of views on popular days?
interpret_all <- function(views, return_sum) {
  count <- 0

  for (v in views) {

  }

  if (return_sum) {

  } else {

  }
}

# Call the interpret_all() function on both linkedin and facebook
코드 편집 및 실행