Amupu

Python np.random.randint() 参数 详解 用法

本文摘要

`np.random.randint()` 是 NumPy 库中用于生成随机整数的函数。它接受 `low`(下限,包含)、`high`(上限,不包含)、`size`(输出形状)和 `dtype`(数据类型)作为参数。使用示例包括生成单一随机整数、形状指定的随机数数组以及设置输出数据类型。

np.random.randint() 是 NumPy 库中的一个函数,用于从给定的范围内生成随机整数。这个函数非常有用,尤其是在需要进行随机采样或模拟的场合。

参数详解

Python np.random.randint() 参数 详解 用法

np.random.randint(low, high=None, size=None, dtype='l')

low:

整数,指定生成的随机数的下限(包含)。

如果 high 参数为 None,则这个参数既作为下限也作为上限,生成的是 [low, low] 范围内的随机整数,即总是 low 本身。

high:

整数或 None(默认为 None),指定生成的随机数的上限(不包含)。

如果设置为 None,则 low 参数将作为上限和下限,如上所述。

size:

整数或整数元组,指定输出的形状。例如,size=3 会返回一个包含 3 个随机数的数组,而 size=(2, 3) 会返回一个 2x3 的数组,其中每个元素都是一个随机数。

如果省略此参数,则返回一个单一的随机数。

dtype:

数据类型(默认为 int 或长整数 l),指定输出数组的数据类型。

用法示例

生成一个 0 到 9 之间的随机整数:

python
import numpy as np  
random_int = np.random.randint(0, 10)  
print(random_int)

生成一个形状为 (3, 2) 的数组,数组中的元素是 0 到 5 之间的随机整数:

python

random_array = np.random.randint(0, 6, size=(3, 2))  
print(random_array)

只使用 low 参数,生成一个与 low 相同的随机整数(在这种情况下,它并不真正是“随机”的,因为结果总是 low):

python

random_int_same = np.random.randint(5, high=None)  
print(random_int_same)  # 输出总是 5

指定输出数组的数据类型为 np.int8:

python

random_int_int8 = np.random.randint(0, 10, dtype=np.int8)  
print(random_int_int8)

示例1:生成一个随机浮点数数组

python

import numpy as np
# 之前的代码...
# random_int = np.random.randint(0, 10)  # 假设这行代码已经被执行过
# random_array = np.random.randint(0, 6, size=(3, 2))  # 假设这行代码也已经被执行过
# 生成一个形状为(2, 3)的随机浮点数数组,范围在0到1之间
random_float_array = np.random.rand(2, 3)
print("Random float array:")
print(random_float_array)

示例2:从正态分布中抽取随机样本

python

import numpy as np
# 之前的代码...
# 生成一个形状为(4,)的数组,其元素来自均值为0、标准差为1的正态分布
normal_distributed_samples = np.random.normal(loc=0.0, scale=1.0, size=4)
print("Random samples from normal distribution:")
print(normal_distributed_samples)

示例3:从给定的概率分布中抽取随机样本(例如,二项分布)

python

import numpy as np
# 之前的代码...
# 生成一个形状为(3,)的数组,其元素来自参数为n=10和p=0.5的二项分布
binomial_samples = np.random.binomial(n=10, p=0.5, size=3)
print("Random samples from binomial distribution:")
print(binomial_samples)

示例4:打乱一个数组的顺序

python

import numpy as np
# 之前的代码...
# 假设我们有一个数组需要被打乱
original_array = np.array([1, 2, 3, 4, 5])
# 使用numpy的random.shuffle函数(注意这个函数是直接修改原数组的)
np.random.shuffle(original_array)
print("Shuffled array:")
print(original_array)

或者,如果你想要一个不修改原数组的打乱版本,你可以使用`np.random.permutation`:

python

# 使用np.random.permutation创建一个新的打乱顺序的数组
shuffled_array = np.random.permutation(original_array)
print("Shuffled array (without modifying original):")
print(shuffled_array)


搜索
分类最新
    分类最新,为您呈现各领域的最新动态和热点话题。无论您关注科技、财经、创业还是生活,这里都能满足您的需求。我们精选最新文章,提供最新鲜、全面的内容,掌握最新的知识和趋势,保持与时俱进的步伐。
分类热门
    分类热门栏目,汇聚了各类热门话题的精华文章,无论是科技、云计算、生活还是时尚,都能在这里找到最新鲜、最热门的内容。我们精选优质文章,为您呈现一个丰富多彩的信息世界,让您在轻松阅读中领略不同领域的魅力,感受时代的脉搏。
  • 作文热门
  • 情感热门
  • 生活热门
分类猜你喜欢
    分类猜你喜欢栏目,根据您的阅读偏好和兴趣,为您精准推荐热门文章。我们运用智能算法,为您呈现最符合您口味的精彩内容。无论是深度解析、趣味科普还是心灵鸡汤,这里都有您喜欢的文章,让您在阅读中享受乐趣,发现更多精彩。
  • 作文分类!
  • 情感分类!
  • 生活分类!
© Copyright Amupu.Z-Blog.Some Rights Reserved.