ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python随机采样函数np.random.choice

2021-07-03 15:03:30  阅读:193  来源: 互联网

标签:采样 python random choice iphone np size


1.np.random.choice

numpy.random.choice(a, size=None, replace=True, p=None)
  • 从给定的一维数组中生成随机数
  • 参数: a为一维数组类似数据或整数;size为数组维度;p为数组中的数据出现的概率
  • a为整数时,对应的一维数组为np.arange(a)

https://blog.csdn.net/qfpkzheng/article/details/79061601

import numpy as np

# 参数意思分别 是从a 中以概率P,随机选择3个, p没有指定的时候相当于是一致的分布
a1 = np.random.choice(a=5, size=3, replace=False, p=None)
print(a1)
# 非一致的分布,会以多少的概率提出来
a2 = np.random.choice(a=5, size=3, replace=False, p=[0.2, 0.1, 0.3, 0.4, 0.0])
print(a2)
# replacement 代表的意思是抽样之后还放不放回去,如果是False的话,那么出来的三个数都不一样,
# 如果是True的话, 有可能会出现重复的,因为前面的抽的放回去了。

2.例子

默认replace=True,即默认是可以重复采样的。

>>> np.random.choice(5)
          
2
>>> np.random.choice(5,2)
          
array([0, 3])

 默认重复采样:

>>> demo_list = ['lenovo', 'sansumg','moto','xiaomi', 'iphone']
          
>>> np.random.choice(demo_list,size=(3,3))
          
array([['iphone', 'iphone', 'lenovo'],
       ['lenovo', 'iphone', 'iphone'],
       ['xiaomi', 'iphone', 'lenovo']], dtype='<U7')

如果采样大小size超过了a的大小,那么自动重复采样:

import numpy as np
print(np.random.choice([1,2,3,4],10))

#结果
[3 4 2 1 4 3 1 4 1 3]
如果要求的数目大于数组的长度,原来它是可以自动这样重复采样的啊。

 

标签:采样,python,random,choice,iphone,np,size
来源: https://www.cnblogs.com/BlueBlueSea/p/14966341.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有