1. 程式人生 > >【程式設計師眼中的統計學(6.2)】原創實現二項分佈演算法以及應用

【程式設計師眼中的統計學(6.2)】原創實現二項分佈演算法以及應用

package DistTools;


/**
 * 
 * @(#)GeoDist.java 
 * @Description:描述:本演算法中在n次伯努利試驗中:試驗n次得到r次成功的概率、二項分佈的期望、二項分佈方差的具體實現。
 * @Definitions:定義:在相互獨立事件中,每道題答對概率為p,答錯概率為q。在n個問題中答對r個問題的概率為:P(X=r)=C_n_r*P^r*q^(n-r)這類問題稱之為二項分佈。表示式為:X~B(n,p)             
 * @Explanation:符號解釋:n:表示總試驗次數;X:表示n次獨立試驗獲取成功的次數;p:表示獨立試驗成功的概率;q:表示獨立試驗失敗的概率
 * @Comments:條件:在進行一系列相互獨立實驗,每次既有成功,又有失敗的可能,且單次實驗成功概率相等。在一系列試驗中求成功的次數。這種情況下適用於本演算法。
 * @優點:在試驗次數一定,求成功次數時,幾何分佈顯示不適合的情況下,給予這類問題二項分佈能更好的解決
 * @缺點:但是面對試驗次數不固定,發生事件概率的情況下,顯然幾何分佈與二項分佈都不能解決,這裡也體現出泊松分佈的優勢。
 * @適用場景:n次試驗在相同條件下進行,各個觀察單位的結果獨立,且只能具有相互對立的一種結果,目的:第N次試驗中成功多少次。
 * @不適用場景:在非獨立試驗情況,或者獨立試驗情況下獲取第一次成功的概率,不適用二項分佈。
 * @輸入/出引數:見具體方法
 * @異常/誤差:
 *          異常1:輸入資料不合法,如:要求輸入double資料,輸入字母。
 *          異常2:輸入資料特別大,超越計算能力
 *          誤差1:計算組合結果資料保留位數,擷取字元,存在一定細微誤差
 *          誤差2:保留小數位數造成不精確
 *       解決:
 *          異常1:輸入不合法給予提示。
 *          異常2:進行異常捕獲
 *          誤差1:儘量中間計算過程不保留小數位,減小誤差影響。
 *          誤差2:進行小數點位數自定義保留封裝,根據具體精度進行設定。
 * @Create Date:  2015年8月3日20:29:13
 * @since   JDK1.6  s
 * @author Bai ningchao
 */

相關推薦

程式設計師眼中統計學6.2原創實現分佈演算法以及應用

package DistTools; /** * * @(#)GeoDist.java * @Description:描述:本演算法中在n次伯努利試驗中:試驗n次得到r次成功的概率、二項分佈的期望、二項分佈方差的具體實現。 * @Definitions:定義:在相互獨立事件中

程式設計師眼中統計學6.1原創實現幾何分佈演算法以及應用

作者 白寧超 2015年8月14日16:07:23 摘要:本文繼統計學幾何分佈、二項分佈、泊松分佈研究的深入,基於各種分佈基礎概念和核心知識介紹之後。就各種分佈的實現和真實環境下應用方是目的。本文就演算法文件規範和程式碼註釋進行梳理,利用其基本核心演算法,實現我們要達到的目的。大家通用的一些統計

程式設計師眼中統計學6幾何分佈分佈及泊松分佈:堅持離散

/** * 在n次伯努利試驗中,試驗r次才得到第一次成功的機率 P(X=r)=pq^{r-1} * @param p double型保留一位小數,表示成功的概率 * @param q double型保留一位小數,表示失敗的概率即1-p * @param r 整型,實驗次數 *

程式設計師眼中統計學2集中趨勢度量:分散性、變異性、強大的距

// 用於統計輸入了多少資料 static int n = 0; static String a1[]; static int b1[]; /** * @Title: set * @Description: 資料賦值 *

程式設計師眼中統計學7正態分佈的運用:正態之美

作者 白寧超 2015年10月15日18:30:07 摘要:程式設計師眼中的統計學系列是作者和團隊共同學習筆記的整理。首先提到統計學,很多人認為是經濟學或者數學的專利,與計算機並沒有交集。誠然在傳統學科中,其在以上學科發揮作用很大。然而隨著科學技術的發展和機器智慧的普及,統計學在機器智慧中的作用越來

程式設計師眼中統計學8統計抽樣的運用:抽取樣本

作者 白寧超 2015年10月15日18:30:07 摘要:程式設計師眼中的統計學系列是作者和團隊共同學習筆記的整理。首先提到統計學,很多人認為是經濟學或者數學的專利,與計算機並沒有交集。誠然在傳統學科中,其在以上學科發揮作用很大。然而隨著科學技術的發展和機器智慧的普及,統計學在機器智慧中的作用越來

程式設計師眼中統計學12相關與迴歸:我的線條如何?

作者 白寧超 2015年10月25日22:16:07 摘要:程式設計師眼中的統計學系列是作者和團隊共同學習筆記的整理。首先提到統計學,很多人認為是經濟學或者數學的專利,與計算機並沒有交集。誠然在傳統學科中,其在以上學科發揮作用很大。然而隨著科學技術的發展和機器智慧的普及,統計學在機器智慧中的作用越來

程式設計師眼中統計學5排列組合:排序、排位、排

/** * 獲取無重線排列總數目 * 描述:從n個元數中選取m個元數進行全排列,得出一共有多少種排法 * 公式:A(m,n)=m!/(n-m)! * 優缺點:輸入資料必須互不相同。求階乘時,使用了for迴圈,避免了遞迴方法導致記憶體溢位的風險。

程式設計師眼中統計學11卡方分佈應用

作者 白寧超 2015年8月9日22:33:00 摘要:程式設計師眼中的統計學系列是作者和團隊共同學習筆記的整理。首先提到統計學,很多人認為是經濟學或者數學的專利,與計算機並沒有交集。誠然在傳統學科中,其在以上學科發揮作用很大。然而隨著科學技術的發展和機器智慧的普及,統計學在機器智慧中的作用越

程式設計師眼中統計學9總體和樣本的估計:進行預測

作者 白寧超 2015年10月15日18:30:07 摘要:程式設計師眼中的統計學系列是作者和團隊共同學習筆記的整理。首先提到統計學,很多人認為是經濟學或者數學的專利,與計算機並沒有交集。誠然在傳統學科中,其在以上學科發揮作用很大。然而隨著科學技術的發展和機器智慧的普及,統計學在機器智慧中的作用越來

程式設計師眼中統計學4離散概率分佈的運用:善用期望

/** * @ClassName ScoreUtil * @Description 分數處理工具類 * @author candymoon * @Date 2014-4-25 */ public class ScoreUtil { /** * 使用jav

程式設計師眼中統計學1資訊圖形化:第一印象

package pictuer; import java.awt.Dimension; import java.awt.Font; import java.io.PrintStream; import java.text.DecimalFormat; import java.text.Simpl

Tiny6410 And Linux6.2—LCD 驅動測試程式BMP 顯示點陣圖——程式碼

剛才看個小視訊,關於華山遊客滯留的,哎,真是花錢買罪吃,下回一定得選好旅遊地點! 少點廢話,上一篇文章是關於 LCD 測試程式(BMP 顯示點陣圖)的基本原理的介紹,今天就發一下程式碼吧,由於中間遇到點小問題,我的測試程式總是出現Segmentation Fault這樣的

一個程式設計師的自白延遲滿足

你有沒有覺得你在時間觀上有那麼一點模糊?被這麼一問,他瞬間陷入了沉思。“時間觀”三字不少掛嘴邊,但認真想想,好像還真是那麼一回事。時間在他心目中還真可能只是一秒、一分、一小時、一天、一週、一月以及一年的概念。 一秒等於多少? 一秒可以等於一千毫秒,也可以等於一百萬微妙.,

重構-改善既有的程式碼設計-重新組織函式6-2

6.6.分解臨時變數(Split Temporary Variable) 6.7.移除對引數的賦值(Remove Assignments to Parameter) 6.8.以函式物件取代函式(Replace Method with

一個資深程式設計師看12306終結篇

“喂?老兄,今晚我請吃飯,你有時間沒”? “有,當然有了。” “很好,你今晚幫我值班吧!” 上面的臺詞估計很多人都看了都會一笑。為什麼會有笑料?因為脫離了人的慣性思維。日常生活中,大家可能只會當笑話,或者會引用這些笑話,會擴散思維,想到很多更為搞笑的笑話。但技術不能這樣,技

程式設計師的奮鬥史十八——人活著,只是一種態度

人活著,只是一種態度。          同一個世界,你的態度怎麼樣,它就是怎麼樣。同一件事情,你是怎麼認為的,它就是怎麼樣的。          只要心情好,一切都不會太壞。你對生活什麼態度,

神級以下必讀! ~程式設計師學習資料圖書&原始碼 01

 感謝博主的辛苦整理和分享!!! 前言:     由於上傳檔案大小限制所以大部分都是通過壓縮成幾部分,除了《JavaSwing圖形介面開發與案例詳解》與《Java Web開發實戰1200例》這兩本書的程式碼需要一個積分,其它全是不需要積分的,請大家積極評價,我很期

黑馬程式設計師-JAVA高階網路程式設計PART2

---------------------- ASP.Net+Android+IOS開發、.Net培訓、期待與您交流! ---------------------- 這部分的知識點主要有: 1.TCP傳輸的幾個應用; 2.瀏覽器訪問伺服器。 一、TCP傳輸的幾個應用

黑馬程式設計師-JAVA高階網路程式設計PART1

---------------------- ASP.Net+Android+IOS開發、.Net培訓、期待與您交流! ---------------------- 這部分的主要知識點: 1.網路程式設計概述; 2.UDP傳輸; 3.TCP傳輸。 一、網路程式設計概述