网易首页 > 网易号 > 正文 申请入驻

NumPy 函数手册:随机数(numpy.random)

0
分享至

在数据分析、统计模拟以及机器学习中,经常需要生成随机数。例如:

• 生成随机样本

• 构造模拟数据

• 初始化模型参数

• 实现随机抽样

NumPy 提供了一组用于随机数生成(random number generation)的函数,可以生成多种概率分布的数据。这些函数主要集中在 numpy.random 模块中。

需要说明的是,从 NumPy 1.17 开始,官方推荐使用新的随机数生成体系()。本文介绍的 numpy.random.* 函数属于传统随机数接口(legacy API),但由于其在大量代码与教材中仍被广泛使用,因此仍具有重要学习价值。

按照功能划分,NumPy 的随机数函数通常可以分为五类:

(1)随机数生成器控制

(2)均匀分布随机数

(3)整数随机数

(4)随机抽样与排列

(5)常见概率分布

一、随机数生成器控制

在进行随机数计算时,经常需要固定随机数序列,以便实验结果可以复现。

seed()

设置随机数种子(Random Seed)。

numpy.random.seed(seed)

参数说明:

• seed:整数种子值

示例:

np.random.rand(3)

输出示例:

[0.37454012 0.95071431 0.73199394]

说明:设置相同的 seed,在相同的 NumPy 版本与实现下通常可以复现相同的随机序列。

二、均匀分布随机数

均匀分布(Uniform Distribution)是最常见的随机数类型。

NumPy 中部分函数名称并未直接体现 “uniform”,例如 rand() 与 random(),但它们本质上都生成 [0,1) 区间的均匀分布随机数。

rand()

生成 [0, 1) 区间的均匀分布随机数。

numpy.random.rand(d0, d1, ..., dn)

参数说明:

• d0, d1, ...:输出数组的形状

示例:

np.random.rand(2,3)

输出示例:

 [0.44 0.32 0.77]]

说明:返回值范围为 0 ≤ x < 1。

random()

生成 [0,1) 区间的均匀分布随机数。

numpy.random.random(size=None)

参数说明:

• size:输出数组形状

示例:

np.random.random((2,3))

uniform()

生成指定区间的均匀分布随机数。

numpy.random.uniform(low=0.0, high=1.0, size=None)

参数说明:

• low:最小值(包含)

• high:最大值(通常不包含)

• size:输出数组形状

示例:

np.random.uniform(10, 20, size=5)

输出示例:

[13.4 17.1 10.8 19.2 15.6]

三、整数随机数

NumPy 还可以生成随机整数。

randint()

生成指定范围的随机整数。

numpy.random.randint(low, high=None, size=None, dtype=int)

参数说明:

• low:最小值(包含)

• high:最大值(不包含)

• size:输出数组形状

• dtype:输出整数的数据类型

示例:

np.random.randint(0, 10, size=5)

输出示例:

[3 7 1 9 0]

说明:生成范围为 low ≤ x < high。

四、随机抽样与排列

NumPy 提供了一组函数,用于随机抽样和随机排列。

choice()

从数组中随机选择元素。

numpy.random.choice(a, size=None, replace=True, p=None)

参数说明:

• a:数组或整数;若为整数 n,则表示从 0~n-1 中选择

• size:抽样数量

• replace:是否允许重复抽样

• p:概率分布,应与 a 的长度一致,且概率和为 1

示例:

np.random.choice([10,20,30,40], size=3)

输出示例:

[20 40 10]

permutation()

生成随机排列。

numpy.random.permutation(x)

参数说明:

• x:整数或数组

如果 x 为数组,则返回数组元素的随机排列。

示例:

np.random.permutation(5)

输出示例:

[3 0 4 1 2]

shuffle()

原地打乱数组顺序。

numpy.random.shuffle(x)

参数说明:

• x:输入数组

示例:

print(a)

说明:shuffle() 会直接修改原数组。对多维数组,shuffle() 只会打乱第一轴(行顺序)。

五、常见概率分布

NumPy 可以生成多种概率分布数据。

normal()

生成正态分布随机数(Normal Distribution)。

numpy.random.normal(loc=0.0, scale=1.0, size=None)

参数说明:

• loc:均值

• scale:标准差

• size:输出数组形状

示例:

np.random.normal(0, 1, size=5)

说明:默认参数时生成标准正态分布。标准正态分布常用于描述自然随机误差、统计推断以及机器学习中的数据标准化与随机初始。

binomial()

生成二项分布随机数。

numpy.random.binomial(n, p, size=None)

参数说明:

• n:试验次数

• p:成功概率

• size:输出数组形状

示例:

np.random.binomial(10, 0.5, size=5)

说明:二项分布常用于描述 n 次独立试验中的成功次数。

poisson()

生成泊松分布随机数。

numpy.random.poisson(lam=1.0, size=None)

参数说明:

• lam:平均发生次数

• size:输出数组形状

示例:

np.random.poisson(3, size=5)

说明:泊松分布常用于描述单位时间或单位空间内事件发生次数。

exponential()

生成指数分布随机数。

numpy.random.exponential(scale=1.0, size=None)

参数说明:

• scale:尺度参数

• size:输出数组形状

示例:

np.random.exponential(1.0, size=5)

说明:指数分布常用于描述事件发生之间的时间间隔。

gamma()

生成 Gamma 分布随机数。

numpy.random.gamma(shape, scale=1.0, size=None)

参数说明:

• shape:形状参数

• scale:尺度参数

• size:输出数组形状

示例:

np.random.gamma(2.0, 2.0, size=5)

说明:Gamma 分布常用于描述等待时间、事件累计时间以及作为贝叶斯统计中的先验分布。

beta()

生成 Beta 分布随机数。

numpy.random.beta(a, b, size=None)

参数说明:

• a:形状参数 α

• b:形状参数 β

• size:输出数组形状

示例:

np.random.beta(2, 5, size=5)

说明:Beta 分布常用于概率建模与贝叶斯统计。

chisquare()

生成卡方分布随机数。

numpy.random.chisquare(df, size=None)

参数说明:

• df:自由度

• size:输出数组形状

示例:

np.random.chisquare(3, size=5)

说明:卡方分布常用于统计检验与方差分析。

lognormal()

生成对数正态分布随机数。

numpy.random.lognormal(mean=0.0, sigma=1.0, size=None)

参数说明:

• mean:对数均值

• sigma:对数标准差

• size:输出数组形状

示例:

np.random.lognormal(0, 1, size=5)

说明:若变量的对数服从正态分布,则该变量服从对数正态分布。

小结

NumPy 在 numpy.random 模块中提供了一套传统随机数生成函数体系,包括均匀分布随机数(rand、uniform)、随机整数(randint)、随机抽样与排列(choice、permutation、shuffle),以及多种概率分布(如 normal、binomial、poisson、gamma、beta、chisquare、lognormal 等)。这些函数构成了 NumPy 在统计模拟、数据分析与机器学习实验中的基础工具。


点赞有美意,赞赏是鼓励

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
女子在阿迪专柜试衣被店员掀帘走光,店长否认拉帘者为员工,还拒绝提供监控,区域负责人道歉:确系员工,店长是新人,处置不当激化矛盾

女子在阿迪专柜试衣被店员掀帘走光,店长否认拉帘者为员工,还拒绝提供监控,区域负责人道歉:确系员工,店长是新人,处置不当激化矛盾

蓬勃新闻
2026-07-30 00:37:32
合肥彻底火了:20年前的孙金龙怎么改变合肥?

合肥彻底火了:20年前的孙金龙怎么改变合肥?

自由评论
2026-07-29 13:56:54
高市早苗宣布地震死亡人数,已有近万人避难

高市早苗宣布地震死亡人数,已有近万人避难

新华社
2026-07-29 11:05:40
“唐朝不存在”的鬼话,背后究竟是谁在煽风点火?

“唐朝不存在”的鬼话,背后究竟是谁在煽风点火?

极目新闻
2026-07-29 17:09:17
风暴眼 | 韩国散户的黑色一天:老婆马上生二胎,账户先爆仓了

风暴眼 | 韩国散户的黑色一天:老婆马上生二胎,账户先爆仓了

凤凰网财经
2026-07-29 13:36:14
8月7日立秋,今年立秋是“闭眼秋”,老辈说的“闭眼秋”是什么意思?是好还是坏?

8月7日立秋,今年立秋是“闭眼秋”,老辈说的“闭眼秋”是什么意思?是好还是坏?

小谈食刻美食
2026-07-29 07:59:35
难以置信!菲尔兹奖得主王虹收入曝光,预计年度税后净收入约200-350万元,网友:收入有点低啊

难以置信!菲尔兹奖得主王虹收入曝光,预计年度税后净收入约200-350万元,网友:收入有点低啊

火山詩话
2026-07-28 21:23:42
女儿考上事业编我去庙里还愿,政审却来电:名下600万公司做啥的

女儿考上事业编我去庙里还愿,政审却来电:名下600万公司做啥的

千秋文化
2026-07-27 19:52:24
皇马跟队:罗德里拒绝曼城续约报价,也拒绝了巴黎,一心只想加盟皇马

皇马跟队:罗德里拒绝曼城续约报价,也拒绝了巴黎,一心只想加盟皇马

懂球帝
2026-07-29 21:59:06
随着吴宜泽6-2,斯诺克上海大师赛八强诞生:仅2位中国选手

随着吴宜泽6-2,斯诺克上海大师赛八强诞生:仅2位中国选手

侧身凌空斩
2026-07-29 22:26:18
金正恩女儿,“高调”亮相

金正恩女儿,“高调”亮相

中国新闻周刊
2026-07-29 18:02:56
中东局势变天!伊朗对乌 “宣战” 不到 24 小时,叙利亚和以色列联手

中东局势变天!伊朗对乌 “宣战” 不到 24 小时,叙利亚和以色列联手

共工之锚
2026-07-29 00:23:06
上次对账还是发达国家呢,怎么看到王虹教授的卡地亚就破防了

上次对账还是发达国家呢,怎么看到王虹教授的卡地亚就破防了

熊太行
2026-07-29 13:11:02
2026年,越来越多的东西开始不对劲了。

2026年,越来越多的东西开始不对劲了。

放牛娃的遐想
2026-07-29 08:10:06
又一电影突然宣布:撤档!上映仅5天,票房15万,“暑期档影片扎堆、市场竞争激烈,现阶段全国排片资源有限,影片优质口碑无法充分释放”

又一电影突然宣布:撤档!上映仅5天,票房15万,“暑期档影片扎堆、市场竞争激烈,现阶段全国排片资源有限,影片优质口碑无法充分释放”

都市快报橙柿互动
2026-07-29 10:01:30
莫氏鸡煲老板参加厨艺竞技节目被淘汰!节目首次公开秘制汤底材料

莫氏鸡煲老板参加厨艺竞技节目被淘汰!节目首次公开秘制汤底材料

半岛晨报
2026-07-29 19:53:34
闹大了!深圳一公司饭堂停止供餐,每天补贴20元,网友:补贴太少,猪脚饭最低都要15元

闹大了!深圳一公司饭堂停止供餐,每天补贴20元,网友:补贴太少,猪脚饭最低都要15元

火山詩话
2026-07-29 10:43:42
怪不得曹彦灏输球后这么豪横,竟然敢对对手何睿宸“拳打脚踢”!

怪不得曹彦灏输球后这么豪横,竟然敢对对手何睿宸“拳打脚踢”!

故事终将光明磊落
2026-07-29 19:22:31
敬一丹丈夫发文后的沉默背后

敬一丹丈夫发文后的沉默背后

小椰的奶奶
2026-07-29 11:00:31
满嘴烂梗的学生,正在“逼疯”深圳教师

满嘴烂梗的学生,正在“逼疯”深圳教师

深圳微时光
2026-07-18 00:54:14
2026-07-30 02:51:00
MediaTea
MediaTea
专业的数字媒体、新媒体技术
1996文章数 86关注度
往期回顾 全部

科技要闻

Kimi K3火爆,奥特曼:开源一定有一席之地

头条要闻

男女酒后驾车坠河身亡女子家属索赔近200万 法院判了

头条要闻

男女酒后驾车坠河身亡女子家属索赔近200万 法院判了

体育要闻

毫无存在感的NBA状元,最先谢谢惠顾?

娱乐要闻

55岁影帝黄政民出轨

财经要闻

天丝红牛多地检出成分不合格 企业申诉

汽车要闻

MG 07预售12.59万起 高阶版配激光雷达+CDC

态度原创

艺术
家居
时尚
数码
公开课

艺术要闻

皇家院士晚节不保?一幅湿漉漉的街景,差点毁掉他一生清誉!

家居要闻

2026建博会(广州) 公装联探展交流活动

第一批被打印机逼疯的家长,出现了

数码要闻

苹果又出新招?一件即可操控所有苹果设备

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版