Vector hóa pandas trong thực tiễn
Trong bài tập này, bạn sẽ áp dụng vector hóa trên các series của pandas để:
- tính điểm trung bình (rank) của tất cả lá bài trong mỗi ván (hàng)
- tính điểm trung bình (rank) của từng lá trong 5 lá bài ở mỗi ván (cột)
Bạn sẽ tiếp tục dùng bộ dữ liệu poker_hands để so sánh hiệu quả của cả hai cách.
Bài tập này là một phần của khóa học
Viết mã hiệu quả với pandas
Hướng dẫn bài tập
- Tính điểm trung bình (rank) trong mỗi ván bài.
- Tính điểm trung bình (rank) của từng trong 5 lá bài trên tất cả các ván.
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.
# Calculate the mean rank in each hand
row_start_time = time.time()
mean_r = poker_hands[['R1', 'R2', 'R3', 'R4', 'R5']].____(axis=____)
print("Time using pandas vectorization for rows: {} sec".format(time.time() - row_start_time))
print(mean_r.head())
# Calculate the mean rank of each of the 5 card in all hands
col_start_time = time.time()
mean_c = poker_hands[['R1', 'R2', 'R3', ____, ____]].____(____=____)
print("Time using pandas vectorization for columns: {} sec".format(time.time() - col_start_time))
print(mean_c.head())