R, 함수형으로 프로그래밍하기 (2)
interpret() 함수의 구현 예시가 이미 제공되어 있습니다. 이번 연습 문제에서는 interpret() 함수를 활용하여 벡터 안에 있는 일별 프로필 조회 수 전체 데이터를 해석하는 또 다른 함수를 작성합니다. 또한, 요청받은 경우에만 인기 있는 날의 조회 수 합계를 반환합니다. 벡터의 모든 요소를 순회할 때는 for 루프를 사용하는 것이 적합합니다. 인기 있는 날의 조회 수 합계 반환 여부는 기본값이 있는 함수 인수를 통해 구현할 수 있습니다.
이 연습은 강의의 일부입니다
중급 R
연습 안내
interpret_all() 함수의 템플릿을 완성하세요:
return_sum를 기본값이TRUE인 선택적 인수로 만드세요.for루프 내부에서 모든views를 순회하며, 매 반복마다interpret(v)의 결과를count에 더하세요.interpret(v)는 인기 있는 날에는v를, 그 외에는0을 반환한다는 점을 기억하세요. 동시에interpret(v)는 출력도 수행합니다.if구문을 완성하세요:return_sum이TRUE이면count를 반환하세요.- 그렇지 않으면
NULL을 반환하세요.
새로 정의한 함수를 linkedin과 facebook 모두에 적용하여 호출하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# 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