Khoa học dữ liệu - Ma trận tương quan thống kê
Ma trận tương quan
Ma trận là một dãy số được sắp xếp theo hàng và cột.
Ma trận tương quan đơn giản là một bảng hiển thị các hệ số tương quan giữa các biến.
Ở đây, các biến được biểu thị ở hàng đầu tiên và trong cột đầu tiên:
Bảng trên đã sử dụng dữ liệu từ bộ dữ liệu sức khỏe đầy đủ.
Quan sát:
- Chúng tôi quan sát thấy rằng Thời lượng và Calorie_Burnage có liên quan chặt chẽ với nhau, với hệ số tương quan là 0,89. Điều này có ý nghĩa vì chúng ta tập luyện càng lâu thì càng đốt cháy nhiều calo
- Chúng tôi quan sát thấy hầu như không có mối quan hệ tuyến tính giữa Average_Pulse và Calorie_Burnage (hệ số tương quan 0,02)
- Chúng ta có thể kết luận rằng Average_Pulse không ảnh hưởng đến Calorie_Burnage không? Không. Chúng tôi sẽ quay lại để trả lời câu hỏi này sau!
Ma trận tương quan trong Python
Chúng ta có thể sử dụng hàm corr()
trong Python để tạo ma trận tương quan. Chúng tôi cũng sử dụng hàm round()
để làm tròn kết quả đầu ra thành hai số thập phân:
Đầu ra:
Sử dụng bản đồ nhiệt
Chúng ta có thể sử dụng Bản đồ nhiệt để trực quan hóa mối tương quan giữa các biến:
Hệ số tương quan càng gần 1 thì hình vuông càng xanh.
Hệ số tương quan càng gần -1 thì hình vuông càng có màu nâu.
Sử dụng Seaborn để tạo bản đồ nhiệt
Chúng ta có thể sử dụng thư viện Seaborn để tạo bản đồ nhiệt tương quan (Seaborn là thư viện trực quan hóa dựa trên matplotlib):
Ví dụ
import matplotlib.pyplot as plt
import seaborn as sns
correlation_full_health =
full_health_data.corr()
axis_corr = sns.heatmap(
correlation_full_health,
vmin=-1, vmax=1, center=0,
cmap=sns.diverging_palette(50,
500, n=500),
square=True
)
plt.show()
Hãy tự mình thử »Ví dụ giải thích:
- Nhập thư viện seaborn dưới dạng sns.
- Sử dụng bộ full_health_data.
- Sử dụng sns.heatmap() để cho Python biết rằng chúng ta muốn có bản đồ nhiệt để trực quan hóa ma trận tương quan.
- Sử dụng ma trận tương quan. Xác định các giá trị tối đa và tối thiểu của bản đồ nhiệt. Xác định rằng 0 là trung tâm.
- Xác định màu sắc bằng sns.diverging_palette. n=500 có nghĩa là chúng ta muốn có 500 loại màu trong cùng một bảng màu.
- Square = True nghĩa là chúng ta muốn xem hình vuông.