如何生成值大于1的nd数组?

问题描述 投票:0回答:2

是否有可能在nd数组中生成随机数,使得数组中的元素在1到2之间(间隔应该在1到大于1的某个数字之间)?这就是我所做的。

input_array = np.random.rand(3,10,10) 

但是nd数组中的值在0到1之间。

请让我知道是否可行。任何帮助和建议将不胜感激。

python-3.x numpy numpy-ndarray
2个回答
0
投票

您可以尝试缩放:

min_val, max_val = 1, 2
input_array = np.random.rand(3,10,10) * (mal_val-min_val) + min_val

或使用uniform

input_array = np.random.uniform(min_val, max_val, (3,10,10))

0
投票

您可以使用np.random.randInt()来生成具有随机整数的nd数组

import numpy as np

rand_arr=np.random.randint(low = 1, high = 10, size = (10,10))
print(rand_arr)

# It changes randomly
    #Output:
    [[6 9 3 4 9 2 6 2 9 7]
     [7 1 7 1 6 2 4 1 8 6]
     [9 5 8 3 5 9 9 7 8 4]
     [7 3 6 9 9 4 7 2 8 5]
     [7 7 7 4 6 6 6 7 2 5]
     [3 3 8 5 8 3 4 5 4 3]
     [7 8 9 3 5 8 3 5 7 9]
     [3 9 7 1 3 6 3 1 4 6]
     [2 9 3 9 3 6 8 2 4 8]
     [6 3 9 4 9 5 5 6 3 7]]
© www.soinside.com 2019 - 2024. All rights reserved.