⑴ 如何在c++或java中實現標准正態分布累積函數
* 標准正態分布分布函數。
* 入口參數u。 任意實數。 返回標准正態分布概率密度。
先是考慮把正態分布的那張表搞到程序中,通過查表的方式,小數點三位後面多出來的值使用公式來計算
正態分布中一些值得注意的量:
密度函數關於平均值對稱
平均值與它的眾數(statistical mode)以及中位數(median)同一數值。
函數曲線下68.268949%的面積在平均數左右的一個標准差范圍內。
java
public double nextDouble() {
return (((long)(next(26)) << 27) + next(27))
/ (double)(1L << 53);
}
private double nextNextGaussian;
private boolean haveNextNextGaussian = false;
synchronized public double nextGaussian() {
// See Knuth, ACP, Section 3.4.1 Algorithm C.
if (haveNextNextGaussian) {
haveNextNextGaussian = false;
return nextNextGaussian;
} else {
double v1, v2, s;
do {
v1 = 2 * nextDouble() - 1; // between -1 and 1
v2 = 2 * nextDouble() - 1; // between -1 and 1
s = v1 * v1 + v2 * v2;
} while (s >= 1 || s == 0);
double multiplier = StrictMath.sqrt(-2 * StrictMath.log(s)/s);
nextNextGaussian = v2 * multiplier;
haveNextNextGaussian = true;
return v1 * multiplier;
}
}
c++
public static double y(double x) {
return 1 /.9) {
return 1; Math;
for (double i = pc.00001.E.sqrt(2 * Math; i += step)
f += y(i) * step; 3.pow(Math, -x * x /.9) {
return 0;
}
⑵ 如何在java中擬合正態分布
% 設數據為x % 第一步, 計算均值, 計算樣本標准差 len = length(x); avg = mean(x); s = sum((x-avg).^2)/(len-1) % 第二步, 將上面結果代入高斯版分布公式 % 第三步權, 畫出圖形.
⑶ 求正態分布的一般計算方法
一般來說
如果獨立的隨機變數X_i~N(a_i,b_i^2) i=1,2,,...,n
那麼X_1+...+X_n服從正態分布N(a_1+...+a_n , b_1^2+...+b_n^2)
這一事實可以通過概率特徵函數得到
如果沒有學過的話,可以通過歸納法得到
就是計算兩個正態分布的和,然後歸納到n的情形。
⑷ 如何在java中得到正態分布的累積密度函數的值,java中有現成的函數嗎是哪個如果沒有的話,要怎樣構造
你把表達示用數學先寫出來,看看有人幫你寫出來沒,咱比較文盲,正太分布都不會寫
⑸ 正態分布的概率計算,X~N(50,100),求P(X<=40)
如下圖,可以轉化為標准正態分布計算,需要查表。
若隨機變數X服從一個數學期望為μ、方差為σ^2的正態分布,記為N(μ,σ^2)。其概率密度函數為正態分布的期望值μ決定了其位置,其標准差σ決定了分布的幅度。當μ = 0,σ = 1時的正態分布是標准正態分布。
拓展資料:
正態分布(Normal distribution),也稱「常態分布」,又名高斯分布(Gaussian distribution),最早由A.棣莫弗在求二項分布的漸近公式中得到。C.F.高斯在研究測量誤差時從另一個角度導出了它。P.S.拉普拉斯和高斯研究了它的性質。
正態分布有極其廣泛的實際背景,生產與科學實驗中很多隨機變數的概率分布都可以近似地用正態分布來描述。例如,在生產條件不變的情況下,產品的強力、抗壓強度、口徑、長度等指標;同一種生物體的身長、體重等指標;同一種種子的重量;測量同一物體的誤差;彈著點沿某一方向的偏差;某個地區的年降水量;以及理想氣體分子的速度分量,等等。
一般來說,如果一個量是由許多微小的獨立隨機因素影響的結果,那麼就可以認為這個量具有正態分布(見中心極限定理)。從理論上看,正態分布具有很多良好的性質 ,許多概率分布可以用它來近似;還有一些常用的概率分布是由它直接導出的,例如對數正態分布、t分布、F分布等。
參考資料:網路-正態分布
⑹ 問一下 java中怎樣產生一個服從正態分布的隨機數!
天啊,這是項目來的一部分源 ,又想起以前了。抱歉屬於公司版權不便透露。
其實這是數學的范疇,用哪種語言實現都一樣。
比如:
double x,sigma,m;
double te = 1.0 / (1.0 + 0.33267 * x);
double NORMAL_DIST = 1.0 - (Math.exp(-0.5 * Math.pow((x - m) / sigma, 2.0)) / (sigma * Math.sqrt(2.0 * Math.PI))) * (0.4361836 * te + -0.1201676 * Math.pow(te, 2.0) + 0.9372980 * Math.pow(te, 3.0));
⑺ 正態分布計算
φ(2)=P{X≤x}=0.977 2
⑻ Java如何設置標准正態分布函數
* 標准正態分布分布函數。
* 入口參數u。 任意實數。 返回標准正態分布概率密度。
先是考慮把正態分布的那張表搞到程序中,通過查表的方式,小數點三位後面多出來的值使用公式來計算
正態分布中一些值得注意的量:
密度函數關於平均值對稱
平均值與它的眾數(statistical mode)以及中位數(median)同一數值。
函數曲線下68.268949%的面積在平均數左右的一個標准差范圍內。
java
public double nextDouble() {
return (((long)(next(26)) << 27) + next(27))
/ (double)(1L << 53);
}
private double nextNextGaussian;
private boolean haveNextNextGaussian = false;
synchronized public double nextGaussian() {
// See Knuth, ACP, Section 3.4.1 Algorithm C.
if (haveNextNextGaussian) {
haveNextNextGaussian = false;
return nextNextGaussian;
} else {
double v1, v2, s;
do {
v1 = 2 * nextDouble() - 1; // between -1 and 1
v2 = 2 * nextDouble() - 1; // between -1 and 1
s = v1 * v1 + v2 * v2;
} while (s >= 1 || s == 0);
double multiplier = StrictMath.sqrt(-2 * StrictMath.log(s)/s);
nextNextGaussian = v2 * multiplier;
haveNextNextGaussian = true;
return v1 * multiplier;
}
}
c++
public static double y(double x) {
return 1 /.9) {
return 1; Math;
for (double i = pc.00001.E.sqrt(2 * Math; i += step)
f += y(i) * step; 3.pow(Math, -x * x /.9) {
return 0;
}
⑼ java中如何產生滿足正態分布的隨機數
java.util.Random 類下有個 nextGaussian() 方法
高斯分布不回知道的請答網路一下
http://bbs.csdn.net/topics/260037361