如何生成准随机统计数据集?
我正在寻找一种工具,可以让我生成具有某些统计属性的数据集。例如,假设我想生成 100 万个带有 x 个异常值的整数以用于测试。
有没有工具可以生成这样的测试数据集?我不一定需要任何花哨的东西,只需要一些基本功能。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我正在寻找一种工具,可以让我生成具有某些统计属性的数据集。例如,假设我想生成 100 万个带有 x 个异常值的整数以用于测试。
有没有工具可以生成这样的测试数据集?我不一定需要任何花哨的东西,只需要一些基本功能。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
最简单的技术,至少从数学上来说是最容易理解的,是接受-拒绝算法算法。
The easiest technique, at least the easiest to understand, mathematically, is the accept-reject algorithm algorithm.
Math from apache commons 有一些工具可用于从简单概率生成数据分布。实际上,使用 random() 功能滚动自己的变体这些生成函数非常容易无论您使用什么系统。假设 random() 返回 0 到 1 之间均匀分布的随机数,您只需将其传递给 逆累积分布函数 无论你需要什么分布来获得你需要的随机数。如果您需要一些非常奇特的东西,您可以使用 Markov链。
Math from apache commons has some tools you can use for generating data from simple probability distributions. It is actually pretty easy to roll your own variant of these generation functions using the random() functionality of whatever system you're using. Assuming random() returns a uniformly distributed random number between 0 and 1 you just pass that through the inverse cumulative distribution function of whatever distribution you need to get the random numbers you need. If you need something very fancy you can use Markov Chains.