gpt4 book ai didi

python - 如何获取某些数据的 "shape"以便我可以在 numpy/scipy 中生成类似的随机数

转载 作者:行者123 更新时间:2023-12-04 09:36:48 24 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Fitting empirical distribution to theoretical ones with Scipy (Python)?

(10 个回答)



Python: Generate random values from empirical distribution

(1 个回答)


去年关闭。




道歉。我知道我想做什么,但不确定它叫什么,所以一直无法搜索它。
我正在追踪数据中的一些异常情况(根据大约 5 万个读数应该添加到相同总数的两个报告略有不同)。因此,我想生成一些与相关数据具有相同“形状”的随机数据,以确定这是否可能归结为舍入误差。
有没有办法分析现有的 50K 左右的数字,然后生成在直方图上看起来几乎相同形状的随机数?我的假设是 numpy 可能是最好的工具,但我愿意接受建议。

最佳答案

如果我正确解释了您的问题,您可以使用 scipy 的 stats 包来执行此操作:
首先,我们生成一个直方图,并使用 scipy.stats.rv_histogram() 方法测量其直方图分布

import scipy.stats
import numpy as np
import matplotlib.pyplot as plt

data = scipy.stats.norm.rvs(size=50000, loc=0)
hist = np.histogram(data, bins=100)
dist = scipy.stats.rv_histogram(hist)
要从此直方图中生成新数据,我们只需调用 dist 变量上的 rvs() 方法:
fake_data = dist.rvs(size=50000)
然后,我们展示两个分布以证明我们得到了预期的结果:
plt.figure()
plt.hist(data,bins=100, alpha=0.5, label='real data')
plt.hist(fake_data,bins=100, alpha=0.5, label='fake data')
plt.legend(loc='upper right')
plt.show()
enter image description here
希望这就是你想要做的。

关于python - 如何获取某些数据的 "shape"以便我可以在 numpy/scipy 中生成类似的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62539081/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com