python-247Đọc toàn bộ đề miễn phí

Bảng xếp hạng tần suất bằng value_counts

Đếm số lần xuất hiện của từng nhãn là phép thống kê rẻ nhất mà cũng hữu ích nhất: đội nào

PythonCơ bản10 phút

Tiến độ của tôi ở bài này

Điểm và code bạn nộp được lưu vào tài khoản sau khi chấm bài.

Đang tải điểm của bạn…

Kiến thức và chủ đề

pandasvalue-countsentry-ramp

Kiến thức tiên quyết: python-basics, pandas-dataframe-intro.

Nội dung đề bài

Mô tả bài toán

Đếm số lần xuất hiện của từng nhãn là phép thống kê rẻ nhất mà cũng hữu ích nhất: đội nào thắng nhiều nhất, mã lỗi nào lặp lại nhiều nhất, từ khoá nào được tìm nhiều nhất. pandas có sẵn value_counts cho cột nhãn, nhưng thứ tự hiển thị vẫn cần người viết quy định rõ để bảng xếp hạng ổn định giữa các lần chạy.

Yêu cầu

Viết hàm team_standings(rows) trả về danh sách dict gồm "team" và "count", sắp theo count giảm dần; khi hai đội bằng số trận thì xếp theo team tăng dần.

Quy ước nộp bài

Nộp hàm team_standings trong solution.py. Hệ thống gọi hàm trực tiếp và so từng phần tử với kỳ vọng; không đọc dữ liệu từ stdin và không in ra stdout.

Input

  • rows: danh sách dict, mỗi dict có khoá "team" là tên đội; từ 1 đến 200 dòng và một đội

có thể xuất hiện nhiều lần.

Output

Danh sách dict hai khoá "team" và "count", mỗi đội đúng một dòng; count là số dòng của đội đó.

Ràng buộc

  • Đếm bằng value_counts của pandas trên cột team.
  • So sánh tên đội phân biệt hoa thường: "Z" và "z" là hai đội khác nhau.
  • Sắp xếp phải tất định, không phụ thuộc thứ tự đội xuất hiện lần đầu trong dữ liệu.

Ví dụ 1

Input

team_standings(rows=[{"team": "B"}, {"team": "A"}, {"team": "B"}])

Output

[{"team": "B", "count": 2}, {"team": "A", "count": 1}]

Ví dụ 2

Input

team_standings(rows=[{"team": "Red"}, {"team": "Blue"}])

Output

[{"team": "Blue", "count": 1}, {"team": "Red", "count": 1}]

Giải thích

Với rows = [{"team": "B"}, {"team": "A"}, {"team": "B"}] thì kết quả là [{"team": "B", "count": 2}, {"team": "A", "count": 1}]. Đội B xuất hiện hai lần nên đứng trước dù chữ cái B đứng sau A.

3 cấp độ gợi ýMở dần khi bạn thật sự cần hỗ trợ.
Phân tích lời giảiGiải thích hướng tư duy và thuật toán.
Code tham khảoDùng để đối chiếu sau khi tự làm.

Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.

Nhóm Zalo