시작하기무료로 시작하기

간단한 .apply() 활용

.apply()를 직접 써 보면서 손에 익혀 볼까요?

학생들의 성취도와 배경 정보를 담은 전체 scores 데이터셋이 제공됩니다.

여러분의 작업은 prevalence() 함수를 정의하고 이를 scores DataFrame의 groups_to_consider 열들에 적용하는 것입니다. 이 함수는 주어진 열에서 가장 많이 나타나는 그룹/범주를 찾아 반환해야 합니다(예: lunch 열에서 가장 흔한 범주가 standard라면, prevalence()standard를 반환해야 합니다).

functools 모듈의 reduce() 함수는 이미 임포트되어 있습니다.

팁: pd.Series는 이터러블(Iterable) 객체이므로, 표준 연산을 그대로 사용할 수 있습니다.

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

Python으로 코딩 인터뷰 문제 연습하기

강의 보기

연습 안내

  • 전달된 객체 series에서 고유 항목과 그 개수로 이뤄진 튜플 리스트를 만드세요.
  • reduce()를 사용해 가장 큰 개수를 가진 튜플을 추출하세요.
  • 가장 개수가 많은 항목을 반환하세요.
  • groups_to_consider에 지정된 열들을 사용해 scores DataFrame에 prevalence 함수를 적용하세요.

실습형 인터랙티브 연습

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

def prevalence(series):
    vals = list(series)
    # Create a tuple list with unique items and their counts
    itms = [(____, ____) for x in set(____)]
    # Extract a tuple with the highest counts using reduce()
    res = reduce(lambda x, y: ____, ____)
    # Return the item with the highest counts
    return ____[____]

# Apply the prevalence function on the scores DataFrame
result = scores[groups_to_consider].____
print(result)
코드 편집 및 실행