Kết quả của phương pháp 5 là một bảng có rất nhiều số biểu thị mức độ quan hệ giữa hai cột Show
Số thay đổi từ -1 đến 1 1 có nghĩa là có mối quan hệ 1-1 (mối tương quan hoàn hảo) và đối với tập dữ liệu này, mỗi khi một giá trị tăng lên trong cột đầu tiên, giá trị kia cũng tăng theo 0. 9 cũng là một mối quan hệ tốt và nếu bạn tăng một giá trị, thì giá trị kia cũng có thể tăng theo -0. 9 sẽ là mối quan hệ tốt như 0. 9, nhưng nếu bạn tăng một giá trị, giá trị kia có thể sẽ giảm xuống 0. 2 có nghĩa KHÔNG phải là mối quan hệ tốt, nghĩa là nếu một giá trị tăng lên không có nghĩa là giá trị kia sẽ Một mối tương quan tốt là gì? Tương quan hoàn hảoTa có thể thấy "Duration" và "Duration" có số là 8, điều này có nghĩa là mỗi cột luôn có một mối quan hệ hoàn hảo với chính nótương quan tốt"Thời lượng" và "Calo" có mối tương quan 9, đây là mối tương quan rất tốt và chúng tôi có thể dự đoán rằng bạn tập càng lâu, bạn càng đốt được nhiều calo và ngược lại. nếu bạn đốt cháy nhiều calo, có lẽ bạn đã tập luyện lâuTương quan xấu"Thời lượng" và "Maxpulse" có mối tương quan 0, đây là mối tương quan rất xấu, nghĩa là chúng ta không thể dự đoán xung tối đa chỉ bằng cách nhìn vào thời lượng tập luyện và ngược lại Hệ số tương quan Pearson, hay PCC, là phương pháp thống kê tiêu chuẩn để tính toán tương quan theo cặp hoặc biến đôi trong Pandas. Nó được sử dụng phổ biến trong thống kê đến mức nó thường được gọi đơn giản là “hệ số tương quan. ” Hệ số tương quan Pearson hoàn toàn giống với Pearson's r và hệ số tương quan thời điểm sản phẩm Pearson (PPMCC), nó chỉ có một số tên Cũng như các hệ số tương quan khác, tương quan Pearson được sử dụng để tính độ mạnh của mối tương quan tuyến tính giữa hai biến trong tập dữ liệu. Về cơ bản, đó là tỷ lệ giữa hiệp phương sai của các biến và tích của độ lệch chuẩn của chúng và đưa ra thước đo hiệp phương sai được chuẩn hóa trả về giá trị trong khoảng từ 1 đến -1. Giá trị 1 biểu thị mối quan hệ tuyến tính dương hoàn hảo, giá trị -1 biểu thị mối quan hệ tuyến tính âm hoàn hảo và giá trị 0 biểu thị không có mối quan hệ tuyến tính Bằng cách giải thích kết quả của hệ số tương quan Pearson, bạn có thể biết liệu một biến có liên quan đến sự thay đổi của biến kia hay không. Ví dụ: giá ô tô mới có thể tương quan thuận với tốc độ tối đa, vì hầu hết những chiếc ô tô mới rất đắt tiền đều là siêu xe hoặc siêu xe Trong hướng dẫn này, tôi sẽ giải thích mối tương quan Pearson và chỉ ra cách bạn có thể sử dụng nó để phát hiện mối tương quan giữa các biến trong tập dữ liệu của bạn bằng hàm Pandas 1Hệ số tương quan Pearson sử dụng Corr()Hệ số tương quan Pearson có thể được tính toán dễ dàng trong Pandas bằng cách sử dụng 1. Hàm 1 được sử dụng để tính toán các hệ số tương quan theo cặp trên các giá trị khung dữ liệu Pandas và có thể tính toán chúng dưới dạng các cặp riêng lẻ (i. e. tốc độ và giá tối đa) hoặc theo cặp trên toàn bộ khung dữ liệuDo hệ số tương quan Pearson được sử dụng rộng rãi bởi các nhà thống kê và nhà khoa học dữ liệu nên hàm 1 được định cấu hình sẵn với các giá trị mặc định để trả về hệ số tương quan Pearson. Tuy nhiên, bạn có thể thay đổi điều này để sử dụng hệ số tương quan xếp hạng Spearman tương tự (hoặc Spearman's r) hoặc hệ số tương quan Kendall Tau, nếu bạn cho rằng chúng phù hợp hơn với dữ liệu của mìnhHàm 1 nhận ba đối số, tất cả đều là tùy chọn. Dưới đây là tóm tắt nhanh về những gì họ làmTham sốMô tả 6Tham số 6 xác định phương pháp nào trong ba phương pháp hệ số tương quan sẽ sử dụng. Giá trị mặc định là 8, là hệ số tương quan thời điểm sản phẩm Pearson. Hai phương pháp khác là 9, đối với hệ số tương quan Kendall Tau và 0 đối với hệ số tương quan xếp hạng của Spearman. 1Tham số 1 xác định số lượng quan sát tối thiểu cần thiết để tính hệ số tương quan. Nếu có ít hơn 1 quan sát, hệ số tương quan sẽ được đặt thành 4. Tính năng này hiện chỉ hoạt động khi tham số 6 được đặt thành 8 hoặc 0. 8Tham số 8 mới trong Pandas 1. 5. 0, vì vậy nó sẽ không hoạt động trên các phiên bản trước của Pandas. Tham số này xác định có chỉ tính hệ số tương quan trên các cột số hay không. Nếu đặt thành 90, chỉ các cột số sẽ được sử dụng để tính hệ số tương quan. Nếu đặt thành 91, tất cả các cột sẽ được dùng để tính hệ số tương quan. Mặc định là 90. Trong một bản phát hành trong tương lai, giá trị của 8 sẽ thay đổi thành 91, vì vậy nếu bạn không đặt giá trị này thì hiện tại bạn sẽ nhận được cảnh báo này. "Cảnh Báo Tương Lai. Giá trị mặc định của numeric_only trong DataFrame. Corr không được dùng nữa. Trong phiên bản tương lai, nó sẽ mặc định là Sai. Chỉ chọn các cột hợp lệ hoặc chỉ định giá trị của numeric_only để tắt cảnh báo này. " Đi qua 95 sẽ sửa nóGiải thích hệ số tương quan của PearsonKhi sử dụng 96 hoặc chỉ 1, vì 98 là mặc định, ma trận tương quan kết quả sẽ có giá trị cho mỗi cặp cột trong Khung dữ liệu ban đầuGiá trị sẽ là một số từ -1 đến 1, trong đó 1 là mối quan hệ tuyến tính dương hoàn hảo, 0 không phải là mối quan hệ tuyến tính và -1 là mối quan hệ tuyến tính âm hoàn hảo. Các tác giả khác nhau sử dụng các cách giải thích hơi khác nhau về các hệ số, nhưng nhìn chung chúng rất giống với những cách giải thích bên dưới Giá trị r của Pearson Độ mạnh của mối quan hệ0Không có mối quan hệ tuyến tính0. 1 đến 0. 3Mối quan hệ tuyến tính yếu0. 3 đến 0. 5Mối quan hệ tuyến tính vừa phải0. 5 đến 0. 7Mối quan hệ tuyến tính chặt chẽ0. 7 đến 1 Mối quan hệ tuyến tính rất mạnh-0. 1 đến -0. 3Mối quan hệ tuyến tính tiêu cực yếu-0. 3 đến -0. 5Mối quan hệ tuyến tính tiêu cực vừa phải-0. 5 đến -0. 7Mối quan hệ tuyến tính tiêu cực mạnh mẽ-0. 7 đến -1 Mối quan hệ tuyến tính tiêu cực rất mạnhTải các góiĐể bắt đầu, hãy mở sổ ghi chép Jupyter mới và nhập thư viện Pandas. Bạn chỉ cần điều này để tính toán các hệ số tương quan trong Pandas, nhưng để đề cập đến một số chủ đề nâng cao hơn, chúng tôi cũng sẽ nhập các gói trực quan hóa dữ liệu Matplotlib và Seaborn và gói phân tích thống kê Scipy 8Nhập tập dữ liệuSau đó, tạo tập dữ liệu giả có mối quan hệ tuyến tính giữa các biến hoặc nhập tập dữ liệu vào Pandas từ tệp CSV. Tôi đang sử dụng tập dữ liệu giá nhà vì tập dữ liệu này chứa một số biến tương quan
01234kinh độ-122. 23-122. 22-122. 24-122. 25-122. 25vĩ độ37. 8837. 8637. 8537. 8537. 85housing_median_age41. 021. 052. 052. 052. 0total_rooms880. 07099. 01467. 01274. 01627. 0total_bed129. 01106. 0190. 0235. 0280. 0dân số322. 02401. 0496. 0558. 0565. 0hộ126. 01138. 0177. 0219. 0259. 0trung_bình_thu_nhập8. 32528. 30147. 25745. 64313. 8462median_house_value452600. 0358500. 0352100. 0341300. 0342200. 0ocean_proximityGẦN VỊNH BAYGẦN VỊNH BAYN GẦN VỊNH BAY Tính tương quan Pearson cho một cặp cộtĐể tính tương quan Pearson cho một cặp cột, bạn có thể thêm phương thức 99 vào cột đầu tiên và chuyển cột thứ hai làm đối số. Nếu chúng tôi làm điều này cho các cột 10 và 11, chúng tôi sẽ nhận lại PCC hoặc r bằng 0. 6880, theo diễn giải của chúng tôi trong bảng tra cứu biểu thị mối tương quan tuyến tính mạnh. Điều đó có nghĩa là, các mẫu có 10 cao hơn thường có 11 cao hơn
Tính tương quan Pearson cho tất cả các cột trong khung dữ liệuĐể tính hệ số tương quan Pearson cho mọi cặp giá trị trong khung dữ liệu, bạn chỉ cần thêm phương thức 1 vào cuối đối tượng khung dữ liệu. Khung dữ liệu hoặc ma trận kết quả sẽ có hệ số tương quan cho mọi cặp cột trong khung dữ liệu. Để tránh nhận được một 15, bạn sẽ muốn đặt 95 trong phương thức 1 9longitudelatitudehousing_median_agetotal_roomstotal_bedroomspopulationhouseholdsmedian_incomemedian_house_valuelongitude1. 000000-0. 924664-0. 1081970. 0445680. 0696080. 0997730. 055310-0. 015176-0. 045967latitude-0. 9246641. 0000000. 011173-0. 036100-0. 066983-0. 108785-0. 071035-0. 079809-0. 144160housing_median_age-0. 1081970. 0111731. 000000-0. 361262-0. 320451-0. 296244-0. 302916-0. 1190340. 105623total_rooms0. 044568-0. 036100-0. 3612621. 0000000. 9303800. 8571260. 9184840. 1980500. 134153total_ bedrooms0. 069608-0. 066983-0. 3204510. 9303801. 0000000. 8777470. 979728-0. 0077230. 049686dân số0. 099773-0. 108785-0. 2962440. 8571260. 8777471. 0000000. 9072220. 004834-0. 024650hộ gia đình0. 055310-0. 071035-0. 3029160. 9184840. 9797280. 9072221. 0000000. 0130330. 065843median_ income-0. 015176-0. 079809-0. 1190340. 198050-0. 0077230. 0048340. 0130331. 0000000. 688075median_house_value-0. 045967-0. 1441600. 1056230. 1341530. 049686-0. 0246500. 0658430. 6880751. 000000 Trực quan hóa các hệ số tương quan với bản đồ nhiệtKhi kiểm tra tập dữ liệu, việc hình dung các mối tương quan bằng Seaborn hoặc thư viện trực quan hóa dữ liệu tương tự thường dễ dàng hơn. Trực quan hóa các mối tương quan thông qua bản đồ nhiệt là kỹ thuật ưa thích của tôi và được thực hiện dễ dàng bằng cách chỉ sử dụng hàm Seaborn và hàm Matplotlib để điều chỉnh kích thước hình 1Trực quan hóa mối tương quan giữa các cặp cộtCó nhiều cách khác nhau để hình dung mối tương quan giữa các cặp biến. Một cách nhanh chóng để xem các mối tương quan của một cặp đơn lẻ là sử dụng hàm Seaborn 18. Điều này có ba đối số bao gồm các cột 19 và 40 mà bạn muốn vẽ và 41 từ khung dữ liệu 4 7Tính ý nghĩa thống kê của hệ số tương quanĐể xác định xem hệ số tương quan có ý nghĩa thống kê hay không, bạn có thể sử dụng phương pháp 42 từ 43. Hàm trả về này hoạt động giống như hàm Pandas 1, ở chỗ nó cũng trả về hệ số tương quan, nhưng điều quan trọng là nó cung cấp giá trị p mà Pandas không cóGiá trị p là xác suất hệ số tương quan không có ý nghĩa thống kê. Nếu giá trị p nhỏ hơn 0. 05 thì hệ số tương quan có ý nghĩa thống kê. Ta nhận được giá trị p rất thấp nên hệ số tương quan có ý nghĩa thống kê 1 2Ngược lại, nếu bạn sử dụng scipy để tính toán hệ số tương quan Pearson và giá trị p của các cột 45 và 11, bạn sẽ nhận được giá trị p cao hơn, cho thấy rằng kết quả không có ý nghĩa thống kê
Làm cách nào để tính hệ số tương quan trong Python?Hệ số Tương quan Pearson có thể được tính bằng Python bằng cách sử dụng phương thức corrcoef() từ Numpy . Đầu vào cho chức năng này thường là một ma trận, giả sử có kích thước mxn , trong đó. Mỗi cột đại diện cho các giá trị của một biến ngẫu nhiên. Mỗi hàng đại diện cho một mẫu duy nhất của n biến ngẫu nhiên.
Corr() trong Python là gì?Phương thức corr() tìm mối tương quan của từng cột trong DataFrame
Phương pháp nào được sử dụng để tính toán mối tương quan trên tất cả các tính năng trong Khung dữ liệu Pandas?Ví dụ. Tính toán tương quan gấu trúc
. corr() để tính cả ba hệ số tương quan. |