python 之numpy 之随机生成数

文章目录

  • [1. **生成均匀分布的随机浮点数**:](#1. 生成均匀分布的随机浮点数:)
  • [2. **生成随机整数**:](#2. 生成随机整数:)
  • [3. **生成标准正态分布随机数**:](#3. 生成标准正态分布随机数:)
  • [4. **生成正态分布随机数**:](#4. 生成正态分布随机数:)
  • [5. **生成均匀分布的随机浮点数**:](#5. 生成均匀分布的随机浮点数:)
  • [6. **生成随机抽样**:](#6. 生成随机抽样:)
  • [7. **设置随机数种子**:](#7. 设置随机数种子:)
  • [8. **随机重排数组元素**:](#8. 随机重排数组元素:)

np.random 模块提供了多种随机数生成函数,用于生成不同类型的随机数据。以下是对每种用法的详细介绍以及相应的示例代码:

1. 生成均匀分布的随机浮点数

使用 np.random.random() 函数,生成均匀分布的随机浮点数,范围在 [0.0, 1.0) 区间内。

python 复制代码
import numpy as np

# 生成一个随机浮点数
rand_num = np.random.random()
print("随机浮点数:", rand_num)

2. 生成随机整数

使用 np.random.randint() 函数,生成指定范围内的随机整数。

python 复制代码
import numpy as np

# 生成一个随机整数,范围在 [0, 10) 内
rand_int = np.random.randint(0, 10)
print("随机整数:", rand_int)

3. 生成标准正态分布随机数

使用 np.random.randn() 函数,生成符合标准正态分布(均值为 0,标准差为 1)的随机数。

python 复制代码
import numpy as np

# 生成一个符合标准正态分布的随机数
rand_normal = np.random.randn()
print("标准正态分布随机数:", rand_normal)

4. 生成正态分布随机数

使用 np.random.normal() 函数,生成指定均值和标准差的正态分布随机数。

python 复制代码
import numpy as np

# 生成均值为 5,标准差为 2 的正态分布随机数
rand_normal = np.random.normal(loc=5, scale=2)
print("正态分布随机数:", rand_normal)

5. 生成均匀分布的随机浮点数

使用 np.random.uniform() 函数,生成在指定范围内均匀分布的随机浮点数。

python 复制代码
import numpy as np

# 生成一个在 [2.0, 4.0) 范围内的随机浮点数
rand_uniform = np.random.uniform(2.0, 4.0)
print("均匀分布随机数:", rand_uniform)

6. 生成随机抽样

使用 np.random.choice() 函数,从给定的数组中随机选择元素,可以指定抽样数量和是否允许重复选择。

python 复制代码
import numpy as np

# 从列表中随机抽样 3 个元素,允许重复选择
sample = np.random.choice([1, 2, 3, 4, 5], size=3, replace=True)
print("随机抽样:", sample)

7. 设置随机数种子

使用 np.random.seed() 函数,设置随机数生成器的种子,以便使随机数生成可重复。

python 复制代码
import numpy as np

# 设置随机数种子
np.random.seed(42)

# 生成随机数
rand_num = np.random.random()
print("随机浮点数:", rand_num)

8. 随机重排数组元素

使用 np.random.shuffle() 函数,对数组进行随机重排。

python 复制代码
import numpy as np

arr = np.array([1, 2, 3, 4, 5])
np.random.shuffle(arr)
print("随机重排后的数组:", arr)

这些是 np.random 模块中常见的随机数生成函数的用法示例。这些函数在不同的数据分析、模拟、机器学习等应用中非常有用,可以用于生成模拟数据、进行随机实验、初始化权重矩阵等各种情况。

相关推荐
Code Warrior32 分钟前
【每日算法】专题五_位运算
开发语言·c++
沐知全栈开发3 小时前
HTML DOM 访问
开发语言
脑袋大大的4 小时前
JavaScript 性能优化实战:减少 DOM 操作引发的重排与重绘
开发语言·javascript·性能优化
云泽野4 小时前
【Java|集合类】list遍历的6种方式
java·python·list
二进制person5 小时前
Java SE--方法的使用
java·开发语言·算法
OneQ6665 小时前
C++讲解---创建日期类
开发语言·c++·算法
GG不是gg6 小时前
NumPy-核心函数np.dot()深入理解
numpy
IMPYLH6 小时前
Python 的内置函数 reversed
笔记·python
码农不惑6 小时前
2025.06.27-14.44 C语言开发:Onvif(二)
c语言·开发语言
Coding小公仔7 小时前
C++ bitset 模板类
开发语言·c++