基于Python中random.sample()的替代方案


Posted in Python onMay 23, 2020

python中random.sample()方法可以随机地从指定列表中提取出N个不同的元素,但在实践中发现,当N的值比较大的时候,该方法执行速度很慢,如:

numpy random模块中的choice方法可以有效提升随机提取的效率:

基于Python中random.sample()的替代方案

需要注意的是,需要置replace为False,即抽取的元素不能重复,默认为True。

基于Python中random.sample()的替代方案

补充知识:Python: random模块的随即取样函数:choice(),choices(),sample()

choice(seq): 从seq序列中(可以是列表,元组,字符串)随机取一个元素返回

choices(population, weights=None, *, cum_weights=None, k=1):

从population中进行K次随机选取,每次选取一个元素(注意会出现同一个元素多次被选中的情况),weights是相对权重值,population中有几个元素就要有相对应的weights值,cum_weights是累加权重值,例如,相对权重〔10, 5, 30,5〕相当于累积权重〔10, 15, 45,50〕。

在内部,在进行选择之前,相对权重被转换为累积权重,因此提供累积权重节省了工作。返回一个列表。

sample(population, k)从population中取样,一次取k个,返回一个k长的列表。

可以像这样使用sample(range(10000000), k=60)

以上这篇基于Python中random.sample()的替代方案就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现给文件添加内容及得到文件信息的方法
May 28 Python
Python基础之getpass模块详细介绍
Aug 10 Python
python实现求解列表中元素的排列和组合问题
Mar 15 Python
Python 离线工作环境搭建的方法步骤
Jul 29 Python
python实现多线程端口扫描
Aug 31 Python
python根据时间获取周数代码实例
Sep 30 Python
django中间键重定向实例方法
Nov 10 Python
python/golang实现循环链表的示例代码
Sep 14 Python
Python批量修改xml的坐标值全部转为整数的实例代码
Nov 26 Python
python链表类中获取元素实例方法
Feb 23 Python
python解决12306登录验证码的实现
Apr 18 Python
python绘制箱型图
Apr 27 Python
keras 自定义loss损失函数,sample在loss上的加权和metric详解
May 23 #Python
keras中模型训练class_weight,sample_weight区别说明
May 23 #Python
浅谈keras中的Merge层(实现层的相加、相减、相乘实例)
May 23 #Python
Keras实现将两个模型连接到一起
May 23 #Python
keras 获取某层输出 获取复用层的多次输出实例
May 23 #Python
给keras层命名,并提取中间层输出值,保存到文档的实例
May 23 #Python
keras小技巧——获取某一个网络层的输出方式
May 23 #Python
You might like
PHILIPS L4X25T电路分析和打理
2021/03/02 无线电
php5.3 注意事项说明
2013/07/01 PHP
JavaScript 选中文字并响应获取的实现代码
2011/08/28 Javascript
JavaScript高级程序设计(第3版)学习笔记9 js函数(下)
2012/10/11 Javascript
JavaScript 盒模型 尺寸深入理解
2012/12/31 Javascript
简单的Jquery遮罩层代码实例
2013/11/14 Javascript
Js冒泡事件详解及阻止示例
2014/03/21 Javascript
让html页面不缓存js的实现方法
2014/10/31 Javascript
JQuery遍历DOM节点的方法
2015/06/11 Javascript
jquery实现的简单二级菜单效果代码
2015/09/22 Javascript
ES6新特征数字、数组、字符串
2016/10/01 Javascript
纯js实现倒计时功能
2017/01/06 Javascript
使用 Node.js 对文本内容分词和关键词抽取
2017/05/27 Javascript
Vue的MVVM实现方法
2017/08/16 Javascript
vue中使用element-ui进行表单验证的实例代码
2018/06/22 Javascript
js基础之事件捕获与冒泡原理
2019/10/09 Javascript
js DOM的事件常见操作实例详解
2019/12/16 Javascript
Vue实现购物车基本功能
2020/11/08 Javascript
Python中的并发编程实例
2014/07/07 Python
详解python中executemany和序列的使用方法
2017/08/12 Python
python 连接各类主流数据库的实例代码
2018/01/30 Python
Python3实现的字典、列表和json对象互转功能示例
2018/05/22 Python
Django ORM 常用字段与不常用字段汇总
2019/08/09 Python
Python爬虫爬取ts碎片视频+验证码登录功能
2021/02/22 Python
HTML5触摸事件(touchstart、touchmove和touchend)的实现
2020/05/08 HTML / CSS
NFL官方在线商店:NFLShop
2020/07/29 全球购物
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
本科生职业生涯规划书范文
2014/01/21 职场文书
教师个人自我评价范文
2014/04/13 职场文书
教师教学评估方案
2014/05/09 职场文书
运动会口号16字
2014/06/07 职场文书
新店开张活动方案
2014/08/24 职场文书
地方白酒代理协议书
2014/10/25 职场文书
2015年高考寄语或鼓励的话
2015/03/23 职场文书
公司欠款证明
2015/06/24 职场文书
六年级作文之预言作文
2019/10/25 职场文书