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

NumPy ngẫu nhiên. Hàm randint() trong Python được sử dụng để trả về các số nguyên ngẫu nhiên từ các giá trị được chỉ định với tham số thấp (bao gồm) đến cao (độc quyền). Nó tạo ra một mảng có hình dạng nhất định và điền vào đó các số nguyên ngẫu nhiên từ thấp (bao gồm) đến cao (độc quyền)

Hàm này lấy một bộ làm số nguyên để chỉ định kích thước của một mảng và hành vi của hàm này giống như các hàm NumPy khác như numpy. những cái() và numpy. số không(). Trong bài viết này, tôi sẽ giải thích cách sử dụng hàm NumPy


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
6 cũng như cách sử dụng cú pháp và tham số của nó để tạo các số nguyên ngẫu nhiên giữa hai giá trị

1. Ví dụ nhanh về số nguyên ngẫu nhiên NumPy

Nếu bạn đang vội, dưới đây là một số ví dụ nhanh về cách sử dụng số nguyên ngẫu nhiên Python NumPy


# Below are the quick examples

# Example 1: Get the 1-D array of random integers
arr = np.random.randint(low=1, high=6, size = 8)

# Example 2: Get the 2-D array of random integers
arr = np.random.randint(low=1, high=9, size=(2, 4))

# Example 3: Get the 3-D array of random integers
arr = np.random.randint(low=3, high=8, (2, 3, 4))

2. Cú pháp của NumPy ngẫu nhiên. randint()

Sau đây là cú pháp của ngẫu nhiên. hàm randint()


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)

2. 1 Tham số ngẫu nhiên. randint()

Sau đây là các thông số của ngẫu nhiên. randint()

  • 
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    7 – Số nguyên (có dấu) thấp nhất, lấy từ phân phối. Tất cả các số được tạo bằng cách sử dụng
    
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    8 đều lớn hơn hoặc bằng
    
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    7
  • 
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    0 – Số nguyên (có dấu) lớn nhất, lấy từ phân phối. Đó là giới hạn trên. Tất cả các số được tạo từ
    
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    8 đều nhỏ hơn
    
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    0
  • 
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    2 – Số nguyên hoặc bộ số nguyên. Sử dụng cái này để chỉ định kích thước hoặc kích thước mảng. Chẳng hạn,
    
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    3 điền vào mảng ba hàng và bốn cột bằng các số nguyên
  • 
    # Syntax of random.randint() 
    random.randint(low, high=None, size=None, dtype=int)
    
    4 – Dtype mong muốn của kết quả

2. 2 Giá trị trả về của randint()

Nó trả về một mảng kích thước và hình dạng của các số nguyên ngẫu nhiên trong khoảng [thấp, cao) hoặc theo mặc định trả về một số nguyên ngẫu nhiên duy nhất

3. Sử dụng NumPy ngẫu nhiên. randint()

_______26 là một hàm thư viện NumPy trả về một mảng các số nguyên ngẫu nhiên có phân phối


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
6 của loại d đã chỉ định trong khoảng thời gian nửa mở [thấp, cao). Theo mặc định, giá trị cao là Không có. Nếu không có giá trị nào được sử dụng cho thông số cao thì kết quả sẽ từ [0, thấp)


import numpy as np

# Get the random integers of array
arr = np.random.randint(low=1, high=6, size = 8)
print(arr)

# Output
# [5 3 5 5 4 3 1 5]

4. Tạo mảng 2 chiều gồm các số nguyên ngẫu nhiên

Tạo các mảng ngẫu nhiên hai chiều bằng cách cung cấp giới hạn dưới mặc định và cung cấp giới hạn cao cho chức năng này. Nó sẽ trả về các số nguyên ngẫu nhiên của mảng 2-D NumPy có hình dạng nhất định. sử dụng tham số kích thước để cung cấp hình dạng của mảng trả về


# Generate 2D numpy array
arr = np.random.randint(low=1, high=9, size=(2, 4))
print(arr)

# Output
# [[4 8 6 3]
# [7 5 4 4]]

5. Tạo số nguyên ngẫu nhiên của mảng 3-D NumPy

Bạn có thể tạo mảng 3 chiều các số ngẫu nhiên bằng cách cung cấp một bộ số nguyên vào hàm này. Nó sẽ trả về các số nguyên ngẫu nhiên của mảng 3 chiều có hình dạng đã chỉ định

________số 8

6. Phần kết luận

Trong bài viết này, tôi đã giải thích hàm


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
7 và sử dụng hàm này để tạo các số nguyên ngẫu nhiên của mảng NumPy đơn và đa chiều có hình dạng được chỉ định với các ví dụ về python

Số ngẫu nhiên được coi là một loại "Chén Thánh" trong điện toán. Có vẻ như tính ngẫu nhiên khá khó nắm bắt; . Tuy nhiên, tính ngẫu nhiên là rất quan trọng trong nhiều ứng dụng trong thế giới thực. Hầu hết các phương pháp mật mã hiện đại phụ thuộc vào việc tạo ra các số thực sự ngẫu nhiên (e. g. , Làm thế nào một bó đèn dung nham bảo vệ chúng ta khỏi tin tặc)

Đối với tất cả chúng ta, những người không cần sự ngẫu nhiên thực sự của các hiện tượng tự nhiên, có một giải pháp thay thế đủ tốt. số giả ngẫu nhiên (PRN). Đó là một cách thú vị để nói các số ngẫu nhiên có thể được tạo lại với một "hạt giống". Hãy xem cách chúng tôi tạo các số giả ngẫu nhiên bằng NumPy. (Ghi chú. Bạn có thể hoàn thành nhiều tác vụ được mô tả ở đây bằng cách sử dụng thư viện chuẩn của Python nhưng những tác vụ đó tạo ra các mảng Python gốc chứ không phải các mảng NumPy mạnh mẽ hơn. )

Tất cả các mẫu sau đều yêu cầu những dòng này ở trên cùng


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
0

con trăn

Khi PRNG được chọn với cùng một giá trị, trong trường hợp này là 100, nó sẽ luôn tạo ra cùng một chuỗi số ngẫu nhiên. Với điều này, các giá trị được tạo trên máy của bạn phải giống với các giá trị được liệt kê trong hướng dẫn này. Đây là lý do tại sao PRNG được coi là "không an toàn về mật mã". Bất kỳ ai có hạt giống đều có thể tạo ra dãy số ngẫu nhiên chính xác mà bạn có

Tạo PRNG

Hãy bắt đầu bằng cách tạo một vài PRN và ghi chúng vào bảng điều khiển


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
1

con trăn


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
15 chọn các số ngẫu nhiên từ phân phối đồng đều giữa 0 và 1. Bởi vì chúng tôi đang sử dụng một hạt giống, bất kể nó được chạy ở đâu và khi nào, nó sẽ luôn tạo ra các số ngẫu nhiên sau.


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
3

con trăn

Lưu ý rằng lệnh gọi ____116 có đối số. ______115 trả về một mảng khi được cung cấp một đối số và các đối số biểu thị hình dạng của mảng.


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
6

con trăn

Ở trên sẽ xuất ra mảng hai chiều các số ngẫu nhiên được chọn từ một phân phối đồng đều


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
7

con trăn

Số nguyên ngẫu nhiên được tạo bằng cách sử dụng


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
18 .


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
9

con trăn

Điều này sẽ xuất ra mảng sau. Lưu ý rằng các số ngẫu nhiên nằm trong khoảng từ 0 đến 100 và độ dài của mảng là 10


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
0

con trăn

Tạo bản phân phối PRNG

phân phối bình thường

Để tạo một mảng các giá trị Gaussian, chúng ta sẽ sử dụng hàm ______119 .


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
2

con trăn


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
3

con trăn

phân phối nhị thức

NumPy cung cấp chức năng tạo giá trị của các bản phân phối khác nhau, bao gồm nhị thức, beta, Pareto, Poisson, v.v. Hãy xem cách chúng ta tạo một số số ngẫu nhiên từ phân phối nhị thức

Giả sử chúng ta muốn mô phỏng kết quả của 10 lần tung đồng xu


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
4

con trăn

Điều này chạy 5 lần thử khác nhau của 10 lần tung đồng xu và trả về số lần đồng xu xuất hiện mặt ngửa (hoặc mặt ngửa, cuộc gọi của bạn) cho mỗi thử nghiệm đó


# Syntax of random.randint() 
random.randint(low, high=None, size=None, dtype=int)
10

con trăn

Phân phối lựa chọn

Đôi khi, bạn muốn có thể chọn các mục ngẫu nhiên từ danh sách. Ví dụ: giả sử bạn muốn chọn ngẫu nhiên giữa màu đỏ (p=0. 25), xanh lục (p=0. 5) và xanh da trời (p=0. 25). Điều đó sẽ trông giống như thế này

Làm cách nào để tạo số ngẫu nhiên với phân phối chuẩn trong Python?

Tạo số ngẫu nhiên bằng cách sử dụng Numpy ngẫu nhiên. Cái gọn gàng. ngẫu nhiên. hàm randn tạo số ngẫu nhiên từ phân phối chuẩn . Hàm này lấy kích thước N theo số lượng số được tạo làm đầu vào và trả về một mảng gồm N số ngẫu nhiên.

Python Randint có thực sự ngẫu nhiên không?

Chúng tôi gọi randint là trình tạo số giả ngẫu nhiên (PRNG) vì nó tạo ra các số có vẻ ngẫu nhiên nhưng không thực sự ngẫu nhiên .

Randint () ngẫu nhiên trong Python là gì?

Phương thức Python Random randint() . Ghi chú. Phương pháp này là bí danh cho randrange(start, stop+1). returns an integer number selected element from the specified range. Note: This method is an alias for randrange(start, stop+1) .

Tôi có thể sử dụng cái gì thay vì Randint ngẫu nhiên trong Python?

Sử dụng ngẫu nhiên. Hàm randrange() để lấy một số nguyên ngẫu nhiên từ phạm vi dành riêng đã cho bằng cách chỉ định số gia. Ví dụ, ngẫu nhiên. randrange(0, 10, 2) sẽ trả về bất kỳ số ngẫu nhiên nào trong khoảng từ 0 đến 20 (như 0, 2, 4, 6, 8).