【python】随机采样的两种方法

python中需要在一定区间内进行采样,或是对生成的数据进行采样,可以利用随机模块random.sample()函数或者numpy.random.choice()函数实现。

1.随机采样

如果需要对某个区间内的数进行随机采样,可以使用random.sample()来实现。
random.sample(N, m)函数主要有两个参数,分别是需要采样的序列N和需要采样的样本个数m。

import random
N = range(10)
m = 3
a = random.sample(N, m)
print(a)
# 从0~9的序列中采样了3个样本
>>> [0, 5, 8]

numpy中的随机数模块同样可以进行采样,可以利用numpy.random.choice()函数实现。numpy.random.choice(a, size=None, replace=True, p=None)主要有四个参数,其中a为一维待采样序列,size为采样样本数目,replace代表是否重复采样p如果设置的话与a等长代表序列中每个位置的采样概率。

import numpy as np
N = range(10)
m = 3
a = np.random.choice(N, size=3)
b = np.random.choice(N, size=6)
c = np.random.choice(N, size=9)
print("a:",a)
print("b:",b)
print("c:",c)
#输出结果
>>>
'a:', array([5, 9, 7])
'b:', array([5, 5, 1, 3, 4, 3
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值