【发布时间】:2021-01-31 18:30:31
【问题描述】:
Javascript>
如果您从事数据科学行业,如果您没有正态分布表,您会感到困扰。我在 Stackoverflow 中看到一篇文章,该文章将 z-score 转换为 JavaScript 中的概率。我真正想知道的是这个函数的逆向计算。
/**
* @param {number} z - Number of standard deviations from the mean.
*/
function GetZPercent(z) {
// If z is greater than 6.5 standard deviations from the mean
// the number of significant digits will be outside of a reasonable
// range.
if (z < -6.5)
return 0.0;
if (z > 6.5)
return 1.0;
var factK = 1;
var sum = 0;
var term = 1;
var k = 0;
var loopStop = Math.exp(-23);
while (Math.abs(term) > loopStop) {
term = 0.3989422804 * Math.pow(-1, k) * Math.pow(z, k) / (2 * k + 1) /
Math.pow(2, k) * Math.pow(z, k + 1) / factK;
sum += term;
k++;
factK *= k;
}
sum += 0.5;
return sum;
}
我知道如何将 z 分数转换为概率。但是,我不知道如何从 javascript 中的相应概率计算 z 分数(标准差)。例如,如果我输入 0.95(或 95%),我可以预期得到 2.25 的标准差。如果我输入 2.25,上面的代码给了我 95%。
【问题讨论】:
-
所以你有 javascript 代码并要求... javascript 代码?有什么问题?
-
您是在询问如何在网页中调用此函数(例如,如何从输入中为函数提供 z 分数并将结果输出并显示出来?)
-
其中一个+1500 similar questions 可能会提供答案,例如,使用与您的代码相同的代码来回答这个问题:Seeking a statistical javascript function to return p-value from a z-score
-
抱歉我的模棱两可。我在问javascript代码。上面的代码将 z 分数转换为概率。我问反之亦然;将概率转换为 z 分数。如果我输入 95%,它会吐出 2.25 个标准差。
-
你能编辑你的问题吗,因为在那里你真的在问相反的问题,无论是在标题还是在你的问题正文中。