LHJ123783 2023-01-08 10:44 采纳率: 20%
浏览 21

python 如何随机生成0到1之间的曲线

python 如何随机生成0到1之间的曲线,最好比较平滑,需要上百万条这样的随机曲线,一条曲线有300个元素,峰值不超过5个。需要做一个这样的数据集。

  • 写回答

1条回答 默认 最新

  • [root@小刘较瘦~]# 新星创作者: python技术领域 2023-01-08 11:37
    关注

    可以使用numpy库中的random模块来生成随机数据。例如,可以使用numpy.random.uniform函数生成均匀分布的随机数据:

    import numpy as np
    
    # 生成300个0到1之间的随机数据
    data = np.random.uniform(0, 1, 300)
    

    如果你希望生成的数据具有更多的波动,可以使用numpy.random.normal函数生成正态分布的随机数据:

    import numpy as np
    
    # 生成300个均值为0,标准差为1的正态分布的随机数据
    data = np.random.normal(0, 1, 300)
    

    如果你希望生成的曲线有一定的峰值,可以使用numpy.random.randint函数生成随机整数来模拟峰值。例如,可以这样生成5个0到1之间的峰值:

    import numpy as np
    
    # 生成5个0到299之间的随机整数
    peaks = np.random.randint(0, 299, 5)
    
    # 为这5个点生成随机值
    data[peaks] = np.random.uniform(0, 1, 5)
    

    使用这些函数的组合,就可以生成你想要的随机曲线了。

    要生成上百万条这样的曲线,可以把上面的代码包装在一个循环中,然后将每条曲线的数据保存到一个列表或数组中。

    评论

报告相同问题?

问题事件

  • 创建了问题 1月8日