Số ngẫu nhiên trong NumPy


Một số ngẫu nhiên là gì?

Số ngẫu nhiên KHÔNG có nghĩa là một số khác nhau mọi lúc. Ngẫu nhiên có nghĩa là một cái gì đó không thể được dự đoán một cách logic.

Pseudo Random và True Random.

Máy tính hoạt động dựa trên các chương trình, và các chương trình là tập hợp các hướng dẫn chính xác. Vì vậy, nó có nghĩa là phải có một số thuật toán để tạo ra một số ngẫu nhiên.

Nếu có một chương trình tạo ra số ngẫu nhiên thì nó có thể được dự đoán, do đó nó không thực sự là ngẫu nhiên.

Các số ngẫu nhiên được tạo ra thông qua một thuật toán tạo được gọi là ngẫu nhiên giả .

Chúng ta có thể tạo ra những con số thực sự ngẫu nhiên không?

Đúng. Để tạo một số thực sự ngẫu nhiên trên máy tính, chúng ta cần lấy dữ liệu ngẫu nhiên từ một số nguồn bên ngoài. Nguồn bên ngoài này thường là các thao tác gõ phím, di chuyển chuột, dữ liệu trên mạng, v.v. của chúng tôi.

Chúng tôi không cần các số thực sự ngẫu nhiên, trừ khi nó liên quan đến bảo mật (ví dụ: khóa mã hóa) hoặc cơ sở ứng dụng là tính ngẫu nhiên (ví dụ: bánh xe roulette kỹ thuật số).

Trong hướng dẫn này, chúng tôi sẽ sử dụng các số ngẫu nhiên giả.


Tạo số ngẫu nhiên

NumPy cung cấp randommô-đun hoạt động với các số ngẫu nhiên.

Thí dụ

Tạo một số nguyên ngẫu nhiên từ 0 đến 100:

from numpy import random

x = random.randint(100)

print(x)

Tạo Float ngẫu nhiên

Phương thức của mô-đun ngẫu nhiên rand()trả về một số thực ngẫu nhiên từ 0 đến 1.

Thí dụ

Tạo một số thực ngẫu nhiên từ 0 đến 1:

from numpy import random

x = random.rand()

print(x)


Tạo mảng ngẫu nhiên

Trong NumPy, chúng tôi làm việc với mảng và bạn có thể sử dụng hai phương pháp từ các ví dụ trên để tạo mảng ngẫu nhiên.

Số nguyên

Phương randint()thức nhận một size tham số nơi bạn có thể chỉ định hình dạng của một mảng.

Thí dụ

Tạo mảng 1-D chứa 5 số nguyên ngẫu nhiên từ 0 đến 100:

from numpy import random

x=random.randint(100, size=(5))

print(x)

Thí dụ

Tạo mảng 2-D có 3 hàng, mỗi hàng chứa 5 số nguyên ngẫu nhiên từ 0 đến 100:

from numpy import random

x = random.randint(100, size=(3, 5))

print(x)

Phao nổi

Phương rand()thức này cũng cho phép bạn chỉ định hình dạng của mảng.

Thí dụ

Tạo một mảng 1-D chứa 5 phao ngẫu nhiên:

from numpy import random

x = random.rand(5)

print(x)

Thí dụ

Tạo mảng 2-D có 3 hàng, mỗi hàng chứa 5 số ngẫu nhiên:

from numpy import random

x = random.rand(3, 5)

print(x)

Tạo số ngẫu nhiên từ mảng

Phương choice()pháp này cho phép bạn tạo một giá trị ngẫu nhiên dựa trên một mảng giá trị.

Phương choice()thức này nhận một mảng làm tham số và trả về ngẫu nhiên một trong các giá trị.

Thí dụ

Trả về một trong các giá trị trong một mảng:

from numpy import random

x = random.choice([3, 5, 7, 9])

print(x)

Phương choice()thức này cũng cho phép bạn trả về một mảng giá trị.

Thêm một sizetham số để chỉ định hình dạng của mảng.

Thí dụ

Tạo mảng 2-D bao gồm các giá trị trong tham số mảng (3, 5, 7 và 9):

from numpy import random

x = random.choice([3, 5, 7, 9], size=(3, 5))

print(x)