Bắt đầu ngayBắt đầu miễn phí

Sử dụng .apply() đơn giản

Cùng thực hành một chút với .apply() nhé!

Bạn được cung cấp toàn bộ dữ liệu scores gồm kết quả học tập của học sinh và thông tin nền tảng của họ.

Nhiệm vụ của bạn là định nghĩa hàm prevalence() và áp dụng nó cho các cột trong groups_to_consider của DataFrame scores. Hàm này cần truy xuất nhóm/hạng mục xuất hiện phổ biến nhất cho một cột cho trước (ví dụ: nếu hạng mục phổ biến nhất trong cột lunchstandard, thì prevalence() phải trả về standard).

Hàm reduce() từ module functools đã được import sẵn.

Mẹo: pd.Series là một đối tượng Iterable. Vì vậy, bạn có thể dùng các thao tác chuẩn trên nó.

Bài tập này là một phần của khóa học

Luyện tập câu hỏi phỏng vấn lập trình bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Tạo một list các tuple gồm các phần tử duy nhất từ đối tượng series được truyền vào và số lần xuất hiện của chúng.
  • Trích xuất tuple có số lần xuất hiện cao nhất bằng reduce().
  • Trả về phần tử có số lần xuất hiện cao nhất.
  • Áp dụng hàm prevalence trên DataFrame scores với các cột được chỉ định trong groups_to_consider.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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)
Chỉnh sửa và Chạy Mã