Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Một bước sớm trong bất kỳ nỗ lực phân tích hoặc mô hình dữ liệu mô hình là để hiểu cách phân phối các biến được phân phối. Kỹ thuật trực quan phân phối có thể cung cấp câu trả lời nhanh cho nhiều câu hỏi quan trọng. Những quan sát bao gồm phạm vi nào? Xu hướng trung tâm của họ là gì? Có phải họ bị sai lệch nặng nề theo một hướng? Có bằng chứng cho sự bimodality? Có những ngoại lệ đáng kể? Các câu trả lời cho những câu hỏi này có thay đổi giữa các tập hợp con được xác định bởi các biến khác không?

Mô -đun phân phối chứa một số chức năng được thiết kế để trả lời các câu hỏi như thế này. Các hàm cấp trục là

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
5,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
6 và
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
7. Chúng được nhóm lại với nhau trong các hàm
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
9 và
sns.displot(tips, x="size", discrete=True)
0 ở cấp độ.distributions module contains several functions designed to answer questions such as these. The axes-level functions are
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
5,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
6, and
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
7. They are grouped together within the figure-level
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
9, and
sns.displot(tips, x="size", discrete=True)
0 functions.

Có một số cách tiếp cận khác nhau để hình dung một phân phối, và mỗi cách có những lợi thế và nhược điểm tương đối của nó. Điều quan trọng là phải hiểu các yếu tố này để bạn có thể chọn cách tiếp cận tốt nhất cho mục tiêu cụ thể của mình.

Vẽ biểu đồ đơn biến#

Có lẽ cách tiếp cận phổ biến nhất để hình dung một phân phối là biểu đồ. Đây là cách tiếp cận mặc định trong

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8, sử dụng cùng mã cơ bản như
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4. Biểu đồ là một biểu đồ thanh trong đó trục biểu thị biến dữ liệu được chia thành một tập hợp các thùng riêng biệt và số lượng quan sát nằm trong mỗi thùng được hiển thị bằng chiều cao của thanh tương ứng:

penguins = sns.load_dataset("penguins")
sns.displot(penguins, x="flipper_length_mm")

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Cốt truyện này ngay lập tức cung cấp một vài hiểu biết về biến

sns.displot(tips, x="size", discrete=True)
3. Chẳng hạn, chúng ta có thể thấy rằng chiều dài flipper phổ biến nhất là khoảng 195 mm, nhưng phân phối xuất hiện lưỡng kim, vì vậy một số này không đại diện cho dữ liệu tốt.

Chọn kích thước thùng#

Kích thước của các thùng là một tham số quan trọng và sử dụng sai kích thước thùng có thể đánh lừa bằng cách che khuất các tính năng quan trọng của dữ liệu hoặc bằng cách tạo các tính năng rõ ràng từ biến đổi ngẫu nhiên. Theo mặc định, ________ 48/________ 44 Chọn kích thước thùng mặc định dựa trên phương sai của dữ liệu và số lượng quan sát. Nhưng bạn không nên quá phụ thuộc vào các phương pháp tự động như vậy, bởi vì chúng phụ thuộc vào các giả định cụ thể về cấu trúc dữ liệu của bạn. Luôn luôn nên kiểm tra xem các ấn tượng của bạn về phân phối có phù hợp trên các kích thước thùng khác nhau không. Để chọn kích thước trực tiếp, đặt tham số

sns.displot(tips, x="size", discrete=True)
6:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Trong các trường hợp khác, có thể có ý nghĩa hơn khi chỉ định số lượng thùng, thay vì kích thước của chúng:

sns.displot(penguins, x="flipper_length_mm", bins=20)

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Một ví dụ về tình huống mặc định thất bại là khi biến có số lượng giá trị số nguyên tương đối nhỏ. Trong trường hợp đó, chiều rộng thùng mặc định có thể quá nhỏ, tạo ra những khoảng trống khó xử trong phân phối:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Một cách tiếp cận sẽ là chỉ định các khoản phá vỡ thùng chính xác bằng cách chuyển một mảng đến

sns.displot(tips, x="size", discrete=True)
7:

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Điều này cũng có thể được thực hiện bằng cách cài đặt

sns.displot(tips, x="size", discrete=True)
8, chọn các ngắt thùng đại diện cho các giá trị duy nhất trong một bộ dữ liệu với các thanh được tập trung vào giá trị tương ứng của chúng.

sns.displot(tips, x="size", discrete=True)

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Nó cũng có thể trực quan hóa sự phân phối của một biến phân loại bằng cách sử dụng logic của biểu đồ. Các thùng riêng biệt được tự động đặt cho các biến phân loại, nhưng nó cũng có thể hữu ích để thu nhỏ lại các thanh một chút để nhấn mạnh bản chất phân loại của trục:

sns.displot(tips, x="day", shrink=.8)

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Điều hòa trên các biến khác#

Khi bạn hiểu phân phối của một biến, bước tiếp theo thường là hỏi liệu các tính năng của phân phối đó có khác nhau giữa các biến khác trong tập dữ liệu hay không. Ví dụ, những gì chiếm phân phối lưỡng kim của chiều dài fipper mà chúng ta đã thấy ở trên?

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8 và
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4 cung cấp hỗ trợ cho tập hợp có điều kiện thông qua ngữ nghĩa
sns.displot(tips, x="day", shrink=.8)
1. Việc gán một biến cho
sns.displot(tips, x="day", shrink=.8)
1 sẽ vẽ một biểu đồ riêng cho từng giá trị duy nhất của nó và phân biệt chúng theo màu sắc:

sns.displot(penguins, x="flipper_length_mm", hue="species")

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Theo mặc định, các biểu đồ khác nhau được xếp lớp trên nhau và trong một số trường hợp, chúng có thể khó phân biệt. Một tùy chọn là thay đổi biểu diễn trực quan của biểu đồ từ biểu đồ thanh thành cốt truyện của Bước Bước:

sns.displot(penguins, x="flipper_length_mm", hue="species", element="step")

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Ngoài ra, thay vì xếp lớp mỗi thanh, chúng có thể được xếp chồng lên nhau, hoặc di chuyển theo chiều dọc. Trong cốt truyện này, phác thảo của biểu đồ đầy đủ sẽ khớp với cốt truyện chỉ với một biến duy nhất:

sns.displot(penguins, x="flipper_length_mm", hue="species", multiple="stack")

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Biểu đồ xếp chồng lên nhau nhấn mạnh mối quan hệ một phần giữa các biến, nhưng nó có thể che khuất các tính năng khác (ví dụ, rất khó để xác định chế độ của phân phối Adelie. chiều rộng của chúng. Điều này đảm bảo rằng không có sự chồng chéo và các thanh vẫn có thể so sánh về chiều cao. Nhưng nó chỉ hoạt động tốt khi biến phân loại có một số lượng nhỏ các cấp độ:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
0

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Bởi vì

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8 là hàm cấp hình và được rút vào
sns.displot(tips, x="day", shrink=.8)
4, nên cũng có thể vẽ từng phân phối riêng lẻ trong một subplot riêng biệt bằng cách gán biến thứ hai cho
sns.displot(tips, x="day", shrink=.8)
5 hoặc
sns.displot(tips, x="day", shrink=.8)
6 thay vì (hoặc ngoài ra)
sns.displot(tips, x="day", shrink=.8)
1. Điều này thể hiện sự phân phối của từng tập hợp con, nhưng nó làm cho việc vẽ các so sánh trực tiếp hơn:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
1

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Không có cách tiếp cận nào trong số này là hoàn hảo, và chúng tôi sẽ sớm thấy một số lựa chọn thay thế cho một biểu đồ phù hợp hơn với nhiệm vụ so sánh.

Thống kê biểu đồ chuẩn hóa#

Trước khi chúng tôi làm, một điểm khác cần lưu ý là, khi các tập hợp con có số lượng quan sát không đồng đều, so sánh phân phối của chúng về mặt số lượng có thể không lý tưởng. Một giải pháp là bình thường hóa số lượng bằng tham số

sns.displot(tips, x="day", shrink=.8)
8:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
2

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Tuy nhiên, theo mặc định, việc chuẩn hóa được áp dụng cho toàn bộ phân phối, do đó, điều này chỉ đơn giản là tái cấu trúc chiều cao của các thanh. Bằng cách cài đặt

sns.displot(tips, x="day", shrink=.8)
9, mỗi tập hợp con sẽ được chuẩn hóa độc lập:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
3

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Chuẩn hóa mật độ tỷ lệ các thanh sao cho các khu vực của chúng tổng hợp lên 1. Do đó, trục mật độ không thể giải thích trực tiếp. Một tùy chọn khác là bình thường hóa các thanh theo độ cao của chúng là 1. Điều này có ý nghĩa nhất khi biến có thể rời rạc, nhưng đó là một tùy chọn cho tất cả các biểu đồ:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
4

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Ước tính mật độ hạt nhân#

Một biểu đồ nhằm mục đích gần đúng hàm mật độ xác suất cơ bản tạo ra dữ liệu bằng cách quan sát và đếm các quan sát. Ước tính mật độ hạt nhân (KDE) trình bày một giải pháp khác cho cùng một vấn đề. Thay vì sử dụng các thùng riêng biệt, một biểu đồ KDE làm mịn các quan sát bằng hạt nhân Gaussian, tạo ra ước tính mật độ liên tục:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
5

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Chọn băng thông làm mịn##

Giống như với kích thước bin trong biểu đồ, khả năng của KDE thể hiện chính xác dữ liệu phụ thuộc vào việc lựa chọn băng thông làm mịn. Ước tính quá mịn có thể xóa các tính năng có ý nghĩa, nhưng ước tính không được làm mờ có thể che khuất hình dạng thực sự trong tiếng ồn ngẫu nhiên. Cách dễ nhất để kiểm tra độ mạnh của ước tính là điều chỉnh băng thông mặc định:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
6

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Lưu ý làm thế nào băng thông hẹp làm cho bimodality rõ ràng hơn nhiều, nhưng đường cong ít mịn hơn nhiều. Ngược lại, một băng thông lớn hơn che khuất sự bimodality gần như hoàn toàn:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
7

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Điều hòa trên các biến khác#

Cũng như biểu đồ, nếu bạn gán biến

sns.displot(tips, x="day", shrink=.8)
1, ước tính mật độ riêng biệt sẽ được tính toán cho từng cấp độ của biến đó:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
8

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Trong nhiều trường hợp, KDE phân lớp dễ diễn giải hơn biểu đồ xếp lớp, vì vậy nó thường là một lựa chọn tốt cho nhiệm vụ so sánh. Tuy nhiên, nhiều tùy chọn tương tự để giải quyết nhiều phân phối cũng áp dụng cho KDE, tuy nhiên:

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
9

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Lưu ý làm thế nào âm mưu xếp chồng lên nhau trong khu vực giữa mỗi đường cong theo mặc định. Cũng có thể điền vào các đường cong cho mật độ đơn hoặc nhiều lớp, mặc dù giá trị alpha mặc định (độ mờ) sẽ khác nhau, do đó mật độ riêng lẻ dễ giải quyết hơn.

sns.displot(penguins, x="flipper_length_mm", bins=20)
0

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Cạm bẫy ước tính mật độ kernel#

Các lô KDE có nhiều lợi thế. Các tính năng quan trọng của dữ liệu rất dễ nhận ra (xu hướng trung tâm, bimodality, độ lệch) và chúng đủ khả năng so sánh dễ dàng giữa các tập hợp con. Nhưng cũng có những tình huống mà KDE thể hiện kém dữ liệu cơ bản. Điều này là do logic của KDE giả định rằng phân phối cơ bản là trơn tru và không giới hạn. Một cách giả định này có thể thất bại là khi một biến phản ánh một số lượng được giới hạn một cách tự nhiên. Nếu có những quan sát nằm gần ràng buộc (ví dụ, các giá trị nhỏ của một biến không thể âm), đường cong KDE có thể mở rộng sang các giá trị không thực tế:

sns.displot(penguins, x="flipper_length_mm", bins=20)
1

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Điều này có thể được tránh một phần với tham số

sns.displot(penguins, x="flipper_length_mm", hue="species")
1, trong đó chỉ định mức độ đường cong sẽ mở rộng ra ngoài các điểm dữ liệu cực đoan. Nhưng điều này chỉ ảnh hưởng đến nơi đường cong được vẽ; Ước tính mật độ vẫn sẽ trơn tru trong phạm vi mà không có dữ liệu nào có thể tồn tại, khiến nó bị thấp một cách giả tạo ở các thái cực của phân phối:

sns.displot(penguins, x="flipper_length_mm", bins=20)
2

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Cách tiếp cận KDE cũng thất bại đối với dữ liệu riêng biệt hoặc khi dữ liệu liên tục tự nhiên nhưng các giá trị cụ thể được đại diện quá mức. Điều quan trọng cần ghi nhớ là KDE sẽ luôn hiển thị cho bạn một đường cong trơn tru, ngay cả khi bản thân dữ liệu không trơn tru. Ví dụ, hãy xem xét phân phối trọng lượng kim cương này:

sns.displot(penguins, x="flipper_length_mm", bins=20)
3

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Mặc dù KDE cho thấy rằng có những đỉnh xung quanh các giá trị cụ thể, nhưng biểu đồ cho thấy sự phân phối lởm chởm hơn nhiều:

sns.displot(penguins, x="flipper_length_mm", bins=20)
4

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Như một sự thỏa hiệp, có thể kết hợp hai cách tiếp cận này. Trong khi ở chế độ biểu đồ,

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8 (như với
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4) có tùy chọn bao gồm đường cong KDE được làm mịn (lưu ý
sns.displot(penguins, x="flipper_length_mm", hue="species")
4, không phải
sns.displot(penguins, x="flipper_length_mm", hue="species")
5):

sns.displot(penguins, x="flipper_length_mm", bins=20)
5

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Phân phối tích lũy theo kinh nghiệm#

Một tùy chọn thứ ba để trực quan hóa các phân phối tính toán chức năng phân phối tích lũy theo kinh nghiệm của Hồi giáo (ECDF). Biểu đồ này vẽ một đường cong tăng đơn điệu thông qua từng datapoint sao cho chiều cao của đường cong phản ánh tỷ lệ quan sát có giá trị nhỏ hơn:

sns.displot(penguins, x="flipper_length_mm", bins=20)
6

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Biểu đồ ECDF có hai lợi thế chính. Không giống như biểu đồ hoặc KDE, nó trực tiếp biểu thị từng datapoint. Điều đó có nghĩa là không có kích thước thùng hoặc thông số làm mịn để xem xét. Ngoài ra, vì đường cong đang tăng đơn điệu, nên nó rất phù hợp để so sánh nhiều phân phối:

sns.displot(penguins, x="flipper_length_mm", bins=20)
7

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Nhược điểm chính của biểu đồ ECDF là nó đại diện cho hình dạng của phân phối ít trực giác hơn so với đường cong biểu đồ hoặc mật độ. Hãy xem xét làm thế nào sự bimodality của độ dài filper ngay lập tức rõ ràng trong biểu đồ, nhưng để thấy nó trong biểu đồ ECDF, bạn phải tìm kiếm các độ dốc khác nhau. Tuy nhiên, với thực tế, bạn có thể học cách trả lời tất cả các câu hỏi quan trọng về phân phối bằng cách kiểm tra ECDF và làm như vậy có thể là một cách tiếp cận mạnh mẽ.

Trực quan hóa phân phối bivariate#

Tất cả các ví dụ cho đến nay đã xem xét các phân phối đơn biến: phân phối của một biến duy nhất, có lẽ có điều kiện trên một biến thứ hai được gán cho

sns.displot(tips, x="day", shrink=.8)
1. Tuy nhiên, gán một biến thứ hai cho
sns.displot(penguins, x="flipper_length_mm", hue="species")
7, sẽ vẽ sơ đồ phân phối bivariate:

sns.displot(penguins, x="flipper_length_mm", bins=20)
8

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Một biểu đồ bivariate chứa dữ liệu trong các hình chữ nhật gạch ô và sau đó hiển thị số lượng quan sát trong mỗi hình chữ nhật với màu lấp đầy (tương tự như

sns.displot(penguins, x="flipper_length_mm", hue="species")
8). Tương tự, một biểu đồ KDE bivariate làm mịn các quan sát (x, y) với 2D Gaussian. Biểu diễn mặc định sau đó hiển thị các đường viền của mật độ 2D:

sns.displot(penguins, x="flipper_length_mm", bins=20)
9

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Việc gán một biến

sns.displot(tips, x="day", shrink=.8)
1 sẽ vẽ biểu đồ nhiều bản đồ hoặc bộ đường viền bằng các màu khác nhau. Đối với biểu đồ bivariate, điều này sẽ chỉ hoạt động tốt nếu có sự chồng chéo tối thiểu giữa các phân phối có điều kiện:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
0

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Cách tiếp cận đường viền của biểu đồ Bivariate KDE cho vay tốt hơn để đánh giá sự chồng chéo, mặc dù một âm mưu có quá nhiều đường viền có thể bận rộn:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
1

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Cũng giống như với các ô đơn biến, việc lựa chọn kích thước bin hoặc băng thông làm mịn sẽ xác định mức độ biểu diễn tốt như mức độ phân phối bivariate cơ bản. Các tham số tương tự được áp dụng, nhưng chúng có thể được điều chỉnh cho từng biến bằng cách truyền một cặp giá trị:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
2

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Để hỗ trợ giải thích bản đồ nhiệt, hãy thêm một thanh màu để hiển thị ánh xạ giữa số lượng và cường độ màu:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
3

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Ý nghĩa của các đường viền mật độ bivariate ít đơn giản hơn. Bởi vì mật độ không thể hiểu trực tiếp, các đường viền được rút ra ở các phần tử ISO của mật độ, có nghĩa là mỗi đường cong hiển thị một mức đặt sao cho một số tỷ lệ p của mật độ nằm bên dưới nó. Các giá trị P được đặt cách đều nhau, với mức thấp nhất được liên kết bởi tham số

sns.displot(penguins, x="flipper_length_mm", hue="species", element="step")
0 và số được kiểm soát bởi
sns.displot(penguins, x="flipper_length_mm", hue="species", element="step")
1:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
4

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Tham số

sns.displot(penguins, x="flipper_length_mm", hue="species", element="step")
1 cũng chấp nhận danh sách các giá trị, để kiểm soát nhiều hơn:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
5

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Bivariate Biểu đồ cho phép một hoặc cả hai biến bị rời rạc. Vẽ một biến rời rạc và một biến liên tục cung cấp một cách khác để so sánh các phân phối đơn biến có điều kiện:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
6

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Ngược lại, âm mưu hai biến rời rạc là một cách dễ dàng cho thấy sự phân loại chéo của các quan sát:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
7

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Trực quan hóa phân phối trong các cài đặt khác#

Một số hàm âm mưu ở cấp độ hình khác trong Seaborn sử dụng các hàm

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4 và
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
5.

Sơ đồ phân phối chung và cận biên#

Đầu tiên là

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
9, làm tăng một biểu đồ phân phối hoặc phân phối sinh học với các phân phối biên của hai biến. Theo mặc định,
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
9 đại diện cho phân phối bivariate bằng cách sử dụng
sns.displot(penguins, x="flipper_length_mm", hue="species", element="step")
7 và các bản phân phối cận biên bằng cách sử dụng
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
4:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
8

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Tương tự như

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8, việc thiết lập một
sns.displot(penguins, x="flipper_length_mm", hue="species")
5 khác nhau trong
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
9 sẽ thay đổi cả các ô khớp và biên giới sử dụng
sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
5:

tips = sns.load_dataset("tips")
sns.displot(tips, x="size")
9

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
9 là giao diện thuận tiện cho lớp
sns.displot(penguins, x="flipper_length_mm", hue="species", multiple="stack")
4, cung cấp sự linh hoạt hơn khi được sử dụng trực tiếp:

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
0

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Một cách ít gây khó chịu để hiển thị các bản phân phối cận biên sử dụng một âm mưu của Rug Rug, điều này thêm một dấu tích nhỏ trên cạnh của cốt truyện để thể hiện từng quan sát riêng lẻ. Điều này được tích hợp vào

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
8:

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
1

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Và hàm

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
7 ở cấp độ trục có thể được sử dụng để thêm thảm ở bên cạnh bất kỳ loại cốt truyện nào khác:

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
2

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Âm mưu phân phối#

Hàm

sns.displot(tips, x="size", discrete=True)
0 cung cấp một sự pha trộn tương tự của các phân phối khớp và cận biên. Tuy nhiên, thay vì tập trung vào một mối quan hệ duy nhất,
sns.displot(tips, x="size", discrete=True)
0 sử dụng phương pháp tiếp cận đa dạng nhỏ của người Hồi giáo để trực quan hóa phân phối đơn biến của tất cả các biến trong một bộ dữ liệu cùng với tất cả các mối quan hệ cặp của họ:

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Như với ________ 49/________ 94, sử dụng trực tiếp

sns.displot(penguins, x="flipper_length_mm", binwidth=3)
01 cơ bản sẽ có khả năng linh hoạt hơn chỉ với một chút gõ hơn một chút:

sns.displot(tips, x="size", bins=[1, 2, 3, 4, 5, 6, 7])
3

Hướng dẫn how do you display data distribution in python? - làm thế nào để bạn hiển thị phân phối dữ liệu trong python?

Làm thế nào để bạn trực quan hóa phân phối dữ liệu trong Python?

Các sơ đồ KDE cũng có thể được sử dụng để hình dung phân phối các biến là tốt. Chúng khá giống với biểu đồ. Tuy nhiên, biểu đồ KDE đại diện cho phân phối sử dụng đường cong mật độ xác suất liên tục thay vì với các thùng riêng biệt. Tham số loại được đặt dưới dạng KD KDE để tạo các sơ đồ KDE. can be used for visualizing the distribution of variables as well. They are quite similar to the histograms. However, a kde plot represents the distribution using a continuous probability density curve rather than with discrete bins. The kind parameter is set as “kde” to generate kde plots.

Làm thế nào để bạn hiển thị phân phối dữ liệu?

Các phương thức trực quan hóa hiển thị tần số, cách dữ liệu trải ra trong một khoảng thời gian hoặc được nhóm lại ...
Box & Whisker Lô ..
Biểu đồ bong bóng..
Lô mật độ ..
Biểu đồ ma trận chấm ..
Histogram..
Biểu đồ thanh nhiều bộ ..
Bộ song song ..
Biểu đồ chữ tượng hình ..

Làm thế nào để bạn phân phối dữ liệu trong Python?

Học máy - Phân phối dữ liệu..
❮ Trước Sau ❯.
Tạo một mảng chứa 250 phao ngẫu nhiên trong khoảng từ 0 đến 5: Nhập Numpy.x = numpy.random.uniform (0,0, 5.0, 250) ....
Vẽ một biểu đồ: Nhập Numpy.....
Tạo một mảng với 100000 số ngẫu nhiên và hiển thị chúng bằng biểu đồ với 100 thanh: nhập Numpy ..

Làm thế nào để bạn tạo một biểu đồ phân phối trong Python?

Approach..
Nhập mô -đun ..
Tạo dữ liệu ..
Tính trung bình và độ lệch ..
Tính mật độ xác suất bình thường ..
Lô đất sử dụng các giá trị được tính toán ở trên ..
Hiển thị âm mưu ..