Menu
CoddyTech

Bản đồ nhiệt tương quan

Thuộc phần Thống kê cho machine learning trong hành trình Machine Learning của Coddy. Bài học 32 trên 64.

Một ma trận gồm hai mươi đặc trưng trông như một bức tường toàn số. Bản đồ nhiệt tô màu từng ô, giúp các cặp có mối tương quan mạnh nổi bật lên. Tám ngày ở rạp chiếu phim:

Bản đồ nhiệt 4 nhân 4 có tiêu đề Tương quan ở rạp chiếu phim, kèm thanh màu từ -1 đến 1. Vé và bắp rang cùng có màu đỏ đậm, temp_c có màu xanh đậm khi so với cả hai, còn hàng nhân viên có màu nhạt

Đoạn code này vẽ biểu đồ:

cinema = pd.DataFrame({
    "tickets": [120, 340, 210, 410, 180, 290, 380, 150],
    "popcorn": [70, 150, 100, 200, 95, 120, 170, 60],
    "temp_c": [24, 12, 15, 9, 20, 19, 11, 22],
    "staff": [6, 5, 8, 7, 5, 6, 6, 8],
})
corr = cinema.corr()
fig, ax = plt.subplots()
im = ax.imshow(corr, cmap="coolwarm", vmin=-1, vmax=1)
fig.colorbar(im)
ax.set_xticks(range(4), corr.columns)
ax.set_yticks(range(4), corr.columns)
ax.set_title("Cinema Correlations")
plt.show()

vmin=-1, vmax=1 cố định màu sắc: màu đỏ là 1, màu trắng là 0, màu xanh lam là -1. fig.colorbar(im) thêm chú giải màu, còn set_xticks(positions, labels) đặt tên cho các ô.

Vé và bỏng ngô cùng phát sáng màu đỏ; những ngày ấm áp có màu xanh lam so với cả hai. Nhân sự hầu như không quan trọng.

challenge icon

Thử thách

Trung bình

Đồng hồ thông minh ghi lại dữ liệu trong 30 ngày vào watch.csv: một cột văn bản weekday và năm cột số.

  1. Tính ma trận tương quan của các cột số.
  2. Vẽ ma trận dưới dạng biểu đồ nhiệt coolwarm từ -1 đến 1, kèm thanh màu.
  3. Gắn nhãn các vạch trên trục ngang và trục dọc bằng tên cột, đặt tiêu đề là Watch Data rồi hiển thị biểu đồ.

Chương trình của bạn không in ra gì. Với ba cột của một chủ sở hữu khác, biểu đồ trông như sau:

Biểu đồ nhiệt 3 × 3 có tiêu đề Watch Data, nhãn vạch là steps, sleep_h và stress, cùng thanh màu từ -1 đến 1: đường chéo màu đỏ, sleep_h và stress màu xanh đậm, steps và sleep_h màu đỏ nhạt

Tự làm thử

import pandas as pd
import matplotlib.pyplot as plt

watch = pd.read_csv("watch.csv")

# Viết code của bạn bên dưới
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Thống kê cho machine learning

Tự luyện tập: Trình biên dịch Python online