python - 如何在给定区间值的区间内进行随机抽样?

标签 python

如何在给定时间间隔内进行随机抽样? 例如,我想在 1 到 10 之间进行单次随机抽样,但每个间隔为 0.5。因此,当我进行采样时,它会给我值,例如 5.5 或 2 或 8.5。

我试过 np.random.random_integers(1,10) 但这只是给我整数值。 非常感谢您的帮助。

最佳答案

您可以编写自己的函数来缩放、生成随机整数,然后再缩放。

from math import floor, ceil
from random import randint

def random_step(low, high, step):
    low_scaled = ceil(float(low)/step)
    high_scaled = floor(float(high)/step)
    return randint(low_scaled, high_scaled) * step

print random_step(3.0, 8.5, 0.5) # 4.5

输出总是step的倍数。

关于python - 如何在给定区间值的区间内进行随机抽样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37594204/

相关文章:

python - 如何使用 Numpy 查找两个图像之间的相关性

python - 无需 root 或 PIP,将 PIL egg 安装到自定义目录

python - select() 和 table.select() 的区别

python - 如何将工作表复制到另一个工作表(而不是作为附加工作表)

python - 如果将某些代码放入 raw_input 则循环函数会中断

python - 迭代期间在同一行打印字典的值和下一个值

python - 设置一个全局变量来执行一个函数

python - 在 numpy 一维数组中查找拐点和固定点

python - 如何修复OpenCV Numpy错误,对象不可迭代

尝试使用 list.insert 时出现 Python 索引错误