Phân phối dữ liệu ngẫu nhiên


Phân phối dữ liệu là gì?

Phân phối dữ liệu là danh sách tất cả các giá trị có thể có và tần suất xuất hiện của mỗi giá trị.

Những danh sách như vậy rất quan trọng khi làm việc với thống kê và khoa học dữ liệu.

Mô-đun ngẫu nhiên cung cấp các phương pháp trả về các phân phối dữ liệu được tạo ngẫu nhiên.


Phân phối ngẫu nhiên

Phân phối ngẫu nhiên là một tập hợp các số ngẫu nhiên tuân theo một hàm mật độ xác suất nhất định .

Hàm mật độ xác suất: Một hàm mô tả một xác suất liên tục. tức là xác suất của tất cả các giá trị trong một mảng.

Chúng ta có thể tạo các số ngẫu nhiên dựa trên các xác suất xác định bằng cách sử dụng choice()phương pháp của randommô-đun.

Phương choice()pháp này cho phép chúng ta chỉ định xác suất cho mỗi giá trị.

Xác suất được đặt bởi một số từ 0 đến 1, trong đó 0 có nghĩa là giá trị sẽ không bao giờ xảy ra và 1 có nghĩa là giá trị sẽ luôn xảy ra.

Thí dụ

Tạo mảng 1-D chứa 100 giá trị, trong đó mỗi giá trị phải là 3, 5, 7 hoặc 9.

Xác suất để giá trị là 3 được đặt là 0,1

Xác suất để giá trị là 5 được đặt là 0,3

Xác suất để giá trị là 7 được đặt là 0,6

Xác suất để giá trị là 9 được đặt là 0

from numpy import random

x = random.choice([3, 5, 7, 9], p=[0.1, 0.3, 0.6, 0.0], size=(100))

print(x)

Tổng của tất cả các số xác suất phải là 1.

Ngay cả khi bạn chạy ví dụ trên 100 lần, giá trị 9 sẽ không bao giờ xảy ra.

Bạn có thể trả về các mảng có hình dạng và kích thước bất kỳ bằng cách chỉ định hình dạng trong sizetham số.

Thí dụ

Tương tự ví dụ trên, nhưng trả về mảng 2-D có 3 hàng, mỗi hàng chứa 5 giá trị.

from numpy import random

x = random.choice([3, 5, 7, 9], p=[0.1, 0.3, 0.6, 0.0], size=(3, 5))

print(x)