当生成正态分布的随机值时,定义范围的最有效方法是什么?

2024-03-05

仅供参考:随机==伪随机

A.当生成均匀随机数时,我可以指定一个范围,即:

(Math.random()-Math.random())*10+5
//generates numbers between -5 and 15

B. 生成一组具有高斯式正态随机性版本的随机值:

//pass in the mean and standard deviation
function randomNorm(mean, stdev) {
  return Math.round((Math.random()*2-1)+(Math.random()*2-1)+(Math.random()*2-1))*stdev+mean);
}

//using the following values:
{
  mean:400, 
  standard_deviation:1
  //results in a range of 397-403, or +-range of 3
},
{
  mean:400, 
  standard_deviation:10
  //results in a range of 372-429, or +-range of 30
},
{
  mean:400, 
  standard_deviation:25
  //results in a range of 326-471, or +-range of 75
}

每个都给我一个大约 standard_deviation*(+-3) 的范围(假设我让程序运行更长时间)。

C. 我可以如下计算这个范围:

  1. 假设我想要的范围是 300-500,所以 var total_range = 200;
  2. 我的平均值是 400,我的+范围是total_range/2 (var r = 100)
  3. 因此 standard_deviation 将为 r/3 或在本例中为 33.333。

这似乎有效,但我不知道我在用数学做什么,所以我觉得自己像个白痴,这个解决方案感觉很笨拙并且不完全准确。

我的问题: 我正在跳舞的一些公式可以帮助我吗?我的要求如下:

  1. 必须能够准确地定义数字范围。
  2. 必须用 JavaScript 完成,尽可能高效。

我想也许我已经很接近了,但还没有完全实现。


减去两个随机数不会得到正态分布,它会得到在零两侧线性下降的数字。请参阅此小提琴中的红色图:

http://jsfiddle.net/Guffa/tvt5K/ http://jsfiddle.net/Guffa/tvt5K/

为了获得正态分布的良好近似值,请将六个随机数相加。请参阅小提琴中的绿色图表。

因此,要获得正态分布的随机数,请使用:

((Math.random() + Math.random() + Math.random() + Math.random() + Math.random() + Math.random()) - 3) / 3

该方法基于中心极限定理,此处概述为第二种方法:http://en.wikipedia.org/wiki/Normal_distribution#Generate_values_from_normal_distribution http://en.wikipedia.org/wiki/Normal_distribution#Generating_values_from_normal_distribution

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当生成正态分布的随机值时,定义范围的最有效方法是什么? 的相关文章

  • 自动调整Google网站嵌入代码的高度(html)

    我正在使用 Google 协作平台嵌入 HTML 代码 将代码粘贴到 从网络嵌入 窗口中 输出的长度是可变的 我希望有一种方法可以动态调整父级的高度iframeGoogle 协作平台用于托管我的 HTML 我知道我可以使用 Google 协
  • 跨域XMLHttp请求

    这是我的情况 我有一台 Web 服务器机器 一台客户端机器和第三台运行一些侦听 XMLHttpRequest 的程序的机器 客户端从客户端计算机访问网络服务器 进行一些更改 然后单击 保存 此时 数据被发送回网络服务器和第三台机器 所有这些
  • 如何在 Firefox 控制台中访问附加内容脚本?

    我为 Firefox 和 Chrome 开发了一个插件 它有内容脚本 我想在浏览器选项卡的控制台中访问它们 在 Firefox 上网页控制台 https developer mozilla org en US docs Tools Web
  • html 表格单元格的条件格式

    是否有现成的解决方案可以对 HTML 表格进行条件格式设置 通过条件格式 我更感兴趣的是根据该列或其他列 在同一个表中 的值 数字 将不同的颜色作为单元格背景 类似于我们在 Excel 条件格式 gt 色阶 gt 红黄绿中的内容 我想在通过
  • 打开 md-calendar 时滚动到当前日期

    目前正在构建一个使用 Angular Material 的应用程序 我们需要一个 md calendar 组件 我们想要自定义按钮样式和内容 因此不使用普通的 md datepicker 问题是 当 md calender 打开时 滚动位置
  • window.onbeforeunload 在 Android Chrome 上不会触发 [alt.解决方案?]

    我开发了一个简单的聊天应用程序 我正在使用 window onbeforeunload当有人关闭选项卡 浏览器时 基本上是当用户离开房间时 通知其他用户 这是我的代码 scope onExit function scope chatstat
  • 在鼠标光标位置添加 cytoscape 节点

    我想在画布上的单击事件上的鼠标箭头位置添加一个 cytoscape 节点 我怎样才能做到这一点 我的方法 效果不太好 我可以通过单击创建一个节点 但无法确保创建的节点的位置位于我单击的位置 使用这样的东西 cy click function
  • 如何导入和导出 javascript ES6 类

    我是 javascript 和 nodejs 的新手 我正在使用这个项目来发展我的技能并学习新技术 目前我的项目使用多个相互依赖的类 类文件位于不同的目录中 我当前正在尝试使用 export 和 require 语句来允许在其他文件中引用类
  • Chrome 扩展同步调用 - 仅在窗口关闭后创建窗口

    我有这个代码 function voteNewWindow mailNum chrome windows create url http www google com incognito true function window conso
  • javascript jquery 使用脚本更改脚本的src

    我有一个 JavaScript 脚本 它有一个 src 元素 这个 src 是一个 url 我想使用 javascript 更改它 一次更改为其他内容 或者动态创建它 使用 javascript jquery 动态创建脚本元素的最佳方法是什
  • 判断一个数字是否能被 3 或 5 整除 (FizzBu​​zz)

    如何根据输出是否能被 3 或 5 整除来更改输出 如果它能被 3 整除 我想显示 rock 如果它能被 5 整除 我想显示 star 类似于 FizzBu zz 如果两者都有 他们都会看到 这是我的代码 if var n Math floo
  • 如何从 JSON 响应重定向?

    所以我尝试使用 Flask 和 Javascript 上传器 Dropzone 上传文件并在上传完成后重定向 文件上传正常 但在烧瓶中使用传统的重定向 return redirect http somesite com 不执行任何操作 页面
  • 如何更改自动完成中的结果过滤器?

    我不想进行字面匹配 而是想通过正则表达式选择结果 我可以覆盖自动完成的默认行为来完成此任务还是需要替代结构 有一个内置的方法可以做到这一点 只需提供一个函数source http jqueryui com demos autocomplet
  • 为什么 Web Worker 性能在 30 秒后急剧下降?

    我正在尝试提高在网络工作人员中执行时脚本的性能 它旨在解析浏览器中的大型文本文件而不会崩溃 一切都运行得很好 但我注意到使用网络工作者时大文件的性能存在严重差异 于是我做了一个简单的实验 我在同一输入上运行脚本两次 第一次运行在页面的主线程
  • 如何在 ASP.NET MVC 3 的 Razor 视图中编码嵌入的 javascript?

    如何在以下上下文中正确编码 JavaScript 我的 JSON 对象中的值是由应用程序管理员设置的 因此我假设它们需要正确编码 对于 HTML 和 JavaScript 都是如此 我在用着System Web Script Seriali
  • Firebase 警告:使用 Firebase Cloud Function 搜索数据时使用未指定的索引

    我构建了一个 Firebase 云函数 用于查找 IsNotificationEnabled 值等于 true 的用户 我的部分职能 export const sendPushNotification functions https onR
  • RoR - Rails 中的大文件上传

    我有一个 Rails Web 应用程序 允许用户上传视频 视频存储在 NFS 安装的目录中 当前的设置适用于较小的文件 但我也需要支持大文件上传 最多 4GB 当我尝试上传 4GB 文件时 它最终会发生 但从用户体验的角度来看很糟糕 上传开
  • Flowtype 属性“msg”缺失为 null 或未定义

    我发现 Flow 很难用 我明白那个Array find可以返回或未定义 因此 通过阅读以下内容 github Array find on Array 引发 https github com facebook flow issues 351
  • 如何从 CouchDB 加载随机文档(高效且公平)?

    我想从存储在 CouchDB 数据库中的一组文档中加载随机文档 单据的取放方式应符合下列要求 效率 文档的查找应该高效 最重要的是加载文档的时间不能随文档总数线性增长 这意味着skip无法使用查询参数 均匀分布 选择应该是真正随机的 尽可能
  • 无法使用 HTML 设置未定义 jQuery UI 自动完成的属性“_renderItem”

    我使用以下代码将 jQuery UI 自动完成项呈现为 HTML 这些项目在自动完成控件中正确呈现 但我不断收到此 JavaScript 错误并且无法移动过去 Firefox 无法转换 JavaScript 参数 Chrome 无法设置未定

随机推荐

  • 如何增加标签和图表区域之间的空间?

    我所有的标签都在栏的顶部 我可以看到这个 but I want that would be like this 填充不适用于税费 但适用于税费 legend display false scales xAxes position top s
  • 无需邻接列表或邻接矩阵的Boost图设计[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 有没有办法在 C boost 中不使用邻接列表或邻接矩阵来创建图结构 使用指向其邻居顶点的指针的顶点结构 当然 只要您的数据具有理论图的
  • LightGBM 警告:没有有意义的特征,因为所有特征值都是常数

    我尝试过以下简单的代码 import lightgbm pandas params objective multiclass num classes 4 train df pandas DataFrame f0 0 1 2 3 5 f1 0
  • 从初始化程序返回之前,不会在所有路径上调用 super init

    我制作了一个包装 Alamofire 的框架 在我的框架中进行测试时 在测试目标中 我有这段代码可以正常工作 import Foundation testable import NetworkManager class MockRouter
  • 向量上管道运算符中的 Case_when 语句

    我试图了解如何更好地使用if else or case when在操作向量时在管道中 在抓取网站的元素后 我留下了这个向量 1 66 121 112 150 211 197 25 72 8 59 100 69 194 c 66 121 11
  • PHP - 自动检测文件何时/是否已更新

    PHP 有没有办法检测文件何时更新和保存 如果不是 最好的方法是什么 伪造 这个 IE 在执行某个操作之前 检查文件的最后保存日期 PHP 脚本无法自动检测文件的更改 因为必须请求该页面 您可以编写一个脚本并运行一个 cron 计划任务 来
  • 在 Azure DevOps REST API 中查找附件以进行删除

    当我向 Azure DevOps REST 服务 创建 提交附件时 是否可以在某个地方可视化其中的所有附件 或者我最好的做法是发送一个 GET 来给我列表 然后我的问题就变成了 我无法删除不需要的附件 有没有一个地方可以让我可视化所有附件
  • 有关来自 oracle.com 的并发代码的问题,该代码解释了死锁

    我从 oracle com 得到了一段代码 它解释了一般的并发性和特别的死锁 代码来自 https docs oracle com javase tutorial essential concurrency deadlock html ht
  • 如何转换从 json 创建的 `_InternalLinkedHashMap`?

    有时 当在 Dart 中遍历复杂的 json 文件时 如果我们能够告诉编辑器期望的结构是什么 这样我们就可以充分利用编辑器的结构 那就太好了 智能代码补全特征 作为一个玩具示例 请考虑以下脚本作家 dart import dart conv
  • php 中转换为 md5 是错误的

    我有一个表格 其中我从用户那里获取用户名和密码 我正在将密码转换为 md5 然后我将其插入数据库 在用户登录表单中 我获取密码并将其转换为 md5 然后我比较两个密码 它在某些条件下匹配 但如果密码 则失败p w0rd 有什么问题吗 这个问
  • 在 Windows CMD 上递归删除文件或文件夹

    如何从命令行在 Windows 上递归删除文件或文件夹 我找到了这个解决方案 我们在命令行上驱动路径并运行此命令 我给出了一个带有 svn 文件扩展名文件夹的示例 for r R in svn do if exist R rd s q R
  • 安卓短信API

    我知道 SMS 内容提供商不是公共 API 的一部分 至少没有记录 但如果我理解正确 只要您知道如何使用 API 仍然可以使用许多 SMS 功能 例如 将短信插入收件箱非常简单 ContentValues values new Conten
  • 如何使用 jQuery 获取具有相同 z-index 的元素?

    现在 我有不同的元素z index 我想使用 jQuery 将它们分组 div class float div div class float div div class float div 我可以用 attr style 得到z inde
  • 确定我正在使用的实体框架版本?

    我相信有两个版本1和2 版本 2 被称为实体框架 4 0 我如何知道应用程序中正在使用哪个版本 这是在我的 web config 中 这是否意味着我正在使用版本 2
  • TwinCAT 3.0 自动化接口无需 Visual Studio?

    我需要从 C 应用程序启动 关闭 TwinCAT 3 0 正如善意回答的如何从控制台 C 程序启动 关闭TwinCAT系统 https stackoverflow com questions 54077462 how to startup
  • 在 iOS 中将 CSV 上传(转换为电子表格)到 Google Drive?

    我已经生成 csv 文件来存储在本地目录路径中 我尝试将 csv 文件上传到谷歌驱动器 它工作正常 从 Google 云端硬盘打开 csv 文件 但电子表格中未显示预览 所以我想上传 csv 文件 将 csv 转换为电子表格 到谷歌驱动器
  • 扩展 EF DBContext

    我不确定我所问的是否是正确的方法 我有一个数据库优先模型 我想向其中添加某些常用方法 例如更新特定表的特定字段 我知道我可以通过使用适当的方法创建一个类来做到这一点 例如 public static class MyClass public
  • Eclipse 传入同步视图将传入的新文件显示为文件夹

    我希望可以在这里询问 Eclipse 中的奇怪行为 错误 当我将 Eclipse 同步视图与 Subclipse 结合使用时 我可以通过指向左侧的蓝色箭头很好地查看来自其他开发人员的所有传入文件 双击非常适合打开比较编辑器并查看所有更改 一
  • 如何在 C# 中将包含 HTML 的字符串渲染为图像?

    我正在开发一个为用户提供交互式反馈工具的网络应用程序 在此应用程序中 用户可以单击发送反馈按钮 该按钮会在当前网页上覆盖一个覆盖层 并允许他们拖动突出显示区域DIVs 强调某些领域 一旦他们提交反馈 整个页面的 HTML 就会通过 AJAX
  • 当生成正态分布的随机值时,定义范围的最有效方法是什么?

    仅供参考 随机 伪随机 A 当生成均匀随机数时 我可以指定一个范围 即 Math random Math random 10 5 generates numbers between 5 and 15 B 生成一组具有高斯式正态随机性版本的随