1. 程式人生 > >【程式設計師眼中的統計學(4)】離散概率分佈的運用:善用期望

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

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

     /** 
     * 使用java正則表示式去掉多餘的.與0 
     * @param s 
     * @return  
     */  
    public static  String subZeroAndDot(String s){  
        if(!s.isEmpty()&&s!=""){
            if(s.indexOf(".") > 0){  
                s = s.replaceAll("0+?$", "");//去掉多餘的0  
                s = s.replaceAll("[.]$", "");//如最後一位是.則去掉  
                //如果現在還包含小數部分
                if(s.indexOf(".")>0){
                    double db = Double.valueOf(s);
                    float retscorce = (float)(Math.round(db*10))/10;
                    return retscorce+"";
                }
            }
        }
        return s;  
    } 
    
    /** 
    * @Title: caculateScoreByProportion 
    * @Description: 按比例計算出分數
    * @author candymoon
    * @date 2014-4-28 下午3:23:03
    * @param curProportion
    * @param curScorceInfo
    * @return
    */
    public static String caculateScoreByProportion(String curProportion,String curScorceInfo){
        //分數 當前分數為0分
        if(!curScorceInfo.isEmpty()&&curScorceInfo!=""){
            return "0";
        }
        float scorceInfo = Float.valueOf(curScorceInfo);
        float proportion = Float.valueOf(curProportion)/100;
        float retscorce = (float)(Math.round(scorceInfo*proportion*10))/10;
        return retscorce+"";
    }
    
    /** 
    * @Title: addScore 
    * @Description: 計算2個得分
    * @author candymoon
    * @date 2014-4-28 下午3:51:03
    * @param beforescorceInfo
    * @param aftercorceInfo
    * @return
    */
    public static String addScore(String beforescorceInfo,String aftercorceInfo){
        float beforescorceInfo1 = Float.valueOf(beforescorceInfo);
        float aftercorceInfo2 = Float.valueOf(aftercorceInfo);
        return (beforescorceInfo1+aftercorceInfo2)+"";
    }
    
     /**
      * 將double型別資料轉換為百分比格式,並保留小數點前IntegerDigits位和小數點後FractionDigits位
      * @author candymoon
      * @param d
      * @param IntegerDigits
      * @param FractionDigits
      * @return
      */
     public static String getPercentFormat(double d,int IntegerDigits,int FractionDigits){
      NumberFormat nf = java.text.NumberFormat.getPercentInstance(); 
      nf.setMaximumIntegerDigits(IntegerDigits);//小數點前保留幾位
      nf.setMinimumFractionDigits(FractionDigits);// 小數點後保留幾位
      String str = nf.format(d);
      return str;
     }
     /**
      * 
      * @param d
      * @return
      */
     public static String getPercentFormat(double d){
      DecimalFormat df = new DecimalFormat(".00");
      String str = df.format(d);
      float con = Float.valueOf(str);
      con = con*100;
      str = (int)con+"%";
      return str;
     }
    /**
     * 獲取指定小數位的字串
     * @param fractionDigits (四捨五入)保留幾位小數
     * @return
     */
     public static String getFractionDigits(double dvalue,int fractionDigits){
        String decimalFormat = "%."+fractionDigits+"f";
        String valueString = String.format(decimalFormat,dvalue);
        //System.out.println(valueString);
        return valueString;
     }
     
    public static void main(String[] args) {
        System.out.println(ScoreUtil.caculateScoreByProportion("40", "62"));
        System.out.println(getPercentFormat(111.0123,3,3));
        getFractionDigits(0.0,3);
        //System.out.println(getFractionDigits(12438.45687,3));
        //System.out.println(getFractionDigits(12438.00,3));
        
    }

相關推薦

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

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

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

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

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

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

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

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

Selenium 3+Java自動化4-八種元素定位

pub nbsp 百度搜索 name tail webdriver nqa pan sss 1 package com.mypro.jase; 2 3 import org.openqa.selenium.By; 4 import org.openqa.sele

CUDA並行程式設計系列4CUDA記憶體

前言 CUDA並行程式設計系列是本人在學習CUDA時整理的資料,內容大都來源於對《CUDA並行程式設計:GPU程式設計指南》、《GPU高效能程式設計CUDA實戰》和CUDA Toolkit Documentation的整理。通過本系列整體介紹CUDA並行程

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

程式設計師眼中統計學3概率計算把握機會

/** * 計算條件概率 * * @param pOfA 概率P(A) * @param pOfAB 概率P(AB) * @return 概率P(B|A) */ public static float Cond

python 歷險記——一個 Java 程式設計師的告白

引言 想學爬蟲還是 python 專業啊,之前一直在用 java, 現在決定嚐嚐鮮,使用 python及爬蟲框架來完成網路資料採集。 程式語言之間都是相通的,比如都需要模組化,引入其他檔案來實現功能,使用列表等容器來處理資料,都要使用 json 或 xml 來解析和傳輸資料。 你會發現通過 類比 的方式,帶

我的程式設計師之路開篇

高中的時候,有次學校開了一個計算機語言培訓班,學費也不貴,學的是BASIC,第一次去試聽,老師講了a,b的值互換問題和進位制之間轉換問題,我聽得頭都大了,想不到還有這樣一種高中生都難以理解的東西,直到高考結束,成績還不錯,報考的是哈工大威海校區的軟體工程專業。 我不知道等待我的是什麼樣的難題

java常見面試題Java程式設計師面試題

不知不覺中,已經將面試題更新到第六篇了,龐大的java面試題庫,想要刷完似乎不大可能,需要一點一點的積累。 1、java 中會存在記憶體洩漏嗎,請簡單描述。   答:會;存在無用但可達的物件,這些物件不能被GC 回收,導致耗費記憶體資源。 2、靜態變數和例項變數的區別?

微信小程式開發文件4

微信小程式網路API 發起請求 上傳、下載 Websocket 檔案 資料快取 微信小程式媒體API 圖片 錄音 音訊播放控制 音樂播放控制 背景音訊播放管理 wx.createAudioContext(audioId) 視訊 wx.createVideoContext(videoId)

關於Google神牛Jeff Dean的笑話,非程式設計師勿入

During his own Google interview, Jeff Dean was asked the implications if P=NP were true. He said, “P = 0 or N = 1.” Then, before the interviewer had ev