java web start statistics software - thuthuir.thu.edu.tw/ir/retrieve/8089/093thu00337010-001.pdf ·...

56
東海大學統計學研究所 碩士論文 指導教授:魏文翔 博士 J J a a v v a a W W e e b b S S t t a a r r t t Statistics Software 研究生:郭碧娟 中華民國九十四年六月

Upload: others

Post on 13-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

  • 東海大學統計學研究所

    碩士論文

    指導教授:魏文翔 博士

    JJaavvaa WWeebb SSttaarrtt Statistics Software

    研究生:郭碧娟

    中華民國九十四年六月

  • i

    摘 要

    隨著網路 e-Learning 的風行,透過搜尋可找到許多統計相關知識,因此,

    網路上有許多統計教學與資訊提供使用者學習使用,其中,免費提供使用者使用

    的統計軟體,如 R,須對統計有一定程度的了解,對於非統計專業人員,操作專

    業統計軟體有進入的障礙,因此,發展一套非統計專業人員使用與教學的圖形介

    面統計軟體是我們所追求的目標。

    本統計軟體自 2003 年開始蘊釀、發展,至今約ㄧ年半,Statistics Software

    BETA 1.0 在 2004 年 6 月公開發表。接著,陸續更新 beta 版本之 Statistics

    Software,經由不斷的測試,至 2005 年 6 月發表 Statistics Software BETA 3.0。

    本軟體在統計方法方面,基礎統計部份已發展完整,陸續加入其它各領域之

    統計分析方法,擴充統計應用的多樣性,以供資料分析的需求;在資料庫部份,

    增加可使用的資料庫,除 Statistics Software BETA 1.0 中的 Access、MS SQL、

    MySQL 之外,另外增加了 PostgreSQL 資料庫系統,因此,當使用者手邊無適合

    資料運用時,可透過網路連結資料庫,取得適當資料做分析。

    本軟體放置於下列網址:

    1. 統計生活館 http://mail.thu.edu.tw/~wenwei/cgi-bin/StatSoft.html 點

    選 Java Web Start Applications 。

    2. 利用 FTP ftp://140.128.104.155/statsoftware/

  • ii

    目錄

    摘摘 要要.................................................................................................................... II

    第第一一章章 序序論論.................................................................................................. 11

    第一節 研究動機 ...........................................1

    第二節 研究目的 ...........................................1

    第三節 章節架構 ...........................................2

    第第二二章章 相相關關軟軟體體探探討討 .................................................................................. 33

    第一節 JAVA程式語言與 JAVA WEB START 技術.....................3

    一、 Java 程式語言 ........................................................................................................3

    二、 Java Web Start 技術 ...............................................................................................4

    第二節 設計模式 (DESIGN PATTERN) .............................5

    第三節 OPEN SOURCE ..........................................8

    一 JAMA.......................................................................................................................8

    二 JSCI.........................................................................................................................8

    三 JFree .......................................................................................................................9

    第四節 JDBC 與 SQL 的概念..................................10

    一 JDBC.....................................................................................................................10

    二 SQL 結構性查詢語言.......................................................................................... 11

    第五節 資料庫(DATABASES) ...................................11

    一 MySQL 資料庫系統..............................................................................................14

    二 PostgreSQL 資料庫系統 .....................................................................................14

    第第三三章章 SSTTAATTIISSTTIICCSS SSOOFFTTWWAARREE 統統計計軟軟體體 ................................................ 1155

    第一節 STATISTICS SOFTWARE 設計概念 ..........................15

    第二節 架設資料庫 ........................................16

  • iii

    第三節 統計軟體架構 ......................................16

    一 檔案 ( File ) ..............................................................................................................16

    二 統計方法 ( Statistics )...............................................................................................17

    三 指令 ( Commands)....................................................................................................21

    四 繪圖 ( Graph) ...........................................................................................................22

    五 輸出 ...........................................................................................................................22

    六 輔助說明 ( Help) ......................................................................................................22

    第第四四章章 操操作作 SSTTAATTIISSTTIICCSS SSOOFFTTWWAARREE 統統計計軟軟體體 ........................................ 2233

    第一節 啟始畫面 ..........................................23

    一 啟動 ...........................................................................................................................23

    二 資料載入 ...................................................................................................................24

    第二節 統計方法 ..........................................25

    一 探索性資料分析 (Exploratory Data Analysis) ........................................................25

    二 迴歸分析 ( Regression Analysis ) .............................................................................26

    三 多變量分析 ( Multivariate Analysis ).......................................................................30

    四 估計 ( Estimation ) ...................................................................................................32

    五 檢定 ( Test )...............................................................................................................34

    六 存活分析 ( Survival Analysis ) .................................................................................37

    七 機率 (Probability).....................................................................................................38

    第三節 指令 (COMMANDS) .....................................39

    第四節 繪圖 (GRAPH)........................................40

    一 散布圖 ( Scatter Plot)...............................................................................................40

    二 折線圖 ( Line Chart ) ...............................................................................................41

    三 長條圖(Bar Chart) ....................................................................................................41

    四 圓餅圖 ( Pie Chart ) .................................................................................................42

  • iv

    五 直方圖 ( Histogram Chart ) .....................................................................................42

    第五節 輸出 (OUTPUT).......................................43

    一 報表輸出 ...................................................................................................................43

    二 圖檔輸出 ...................................................................................................................44

    第六節 輔助說明 ( HELP )...................................44

    第第五五章章 結結論論................................................................................................ 4455

    第一節 結論...............................................45

    第二節 未來展望 ..........................................45

    附附錄錄 AA DDOOCCUUMMEENNTTAATTIIOONN .................................................................................. 4477

    參參考考文文獻獻............................................................................................................ 4488

    圖目錄

    圖 1 MVC 結構 ...............................................6

    圖 2 資料庫架構圖..........................................12

    圖 3 Statistics Software 流程圖...........................15

    圖 4 應用程式利用 JDBC-ODBC 橋接器與資料庫連接圖............16

    圖 5 Statistical Software 啟始畫面........................23

    圖 6 資料輸入.............................................24

    圖 7 檔案讀取.............................................24

    圖 8 資料庫讀取...........................................24

    圖 9 探索性資料分析 Exploratory Data Analysis..............25

    圖 10 敘述統計 (類別資料)..................................25

    圖 11 敘述統計 (連續資料)..................................25

    圖 12 迴歸分析............................................26

    圖 13 線性迴歸分析........................................26

    圖 14 廣義線性模型........................................27

    圖 15 Logistic Regression ( Binary Data ).................27

  • v

    圖 16 邏輯斯迴歸 (Logistic Regression)....................28

    圖 17 對數線性模型 Log-Linear Model .......................29

    圖 18 GLM scatter plot....................................29

    圖 19 多變量分析..........................................30

    圖 20 主成份分析 Principle Component Analysis.............30

    圖 21 區別分析 Discriminant Analysis.......................31

    圖 22 K-Means..............................................31

    圖 23 估計 Estimate........................................32

    圖 24 單樣本平均數估計 One Sample Mean Estimate ............32

    圖 25 雙樣本平均數估計 Two Sample Mean Estimate ............33

    圖 26 成對樣本平均數估計 Match Sample Mean Estimate ........33

    圖 27 檢定 Test ............................................34

    圖 28 單樣本平均數檢定 One Sample Mean Test ................34

    圖 29 雙樣本平均數檢定 Two Sample Mean Test ................35

    圖 30 成對樣本平均數檢定 Match Sample Mean Test ............35

    圖 31 單因子變異數分析 One-Way Anova .......................36

    圖 32 卡方分析 Chi-square Test .............................36

    圖 33 Kaplan-Meier estimate................................37

    圖 34 Log-rank test........................................37

    圖 35 標準常態分配 Standard Normal Distribution ............38

    圖 36 分配 Distributions ...................................38

    圖 37 指令 Command .........................................39

    圖 38 S-plus 指令視窗......................................39

    圖 39 繪圖功能 Graph.......................................40

    圖 40 散布圖 Scatter Plot ..................................40

    圖 41 折線圖 Line Chart ....................................41

    圖 42 長條圖 Bar Chart .....................................41

    圖 43 圓餅圖 Pie Chart .....................................42

    圖 44 直方圖 Histogram Chart ...............................42

  • vi

    圖 45 Layout Preview.......................................43

    圖 46 Report Layout........................................43

    圖 47 Chart Layout.........................................44

    圖 48 HELP 輔助說明 ........................................44

    圖 49 Constructor and Method of LogLinearRegression........47

    表目錄

    表 1 Design Pattern 分類表..................................7

    表 2 Link function........................................18

    表 3 不同尺度的統計分析方法................................19

  • 1

    第一章 序論

    統計是一門將生活中的各種資料透過蒐集、整理、分析後將資訊化繁為簡,

    進而歸納出有意義訊息的科學方法,在不確定情況下,做出決策,在各行業、學

    科應用十分廣泛。然而統計研究須運用大量的數學知識,因此,進行資料分析時,

    往往會面對繁雜的數據之整理及計算上的困擾,對於非統計專業人員,如何開發

    一個好用、方便且能快速將目前手邊的資料分析出結果的軟體,是很實用的,同

    時將統計落實於生活應用中,並經由軟體的操作進而瞭解統計,激起其對於學

    習、應用統計概念思考的興趣與習慣。

    本研究開發一個提供使用者簡單使用的統計軟體,因而要如何開發設計軟

    體,及考慮使用的便利性,是其中一項重要的課題。

    第一節 研究動機

    現行市面上的統計套裝軟體,要價數千至數萬元不等,且使用者須具備一定

    之統計基礎方能使用,基於許多統計使用者非經專業訓練,因此,提供一個免費

    且利於學習的統計軟體,使使用者易於操作各種統計方法。

    延續 Statistics Software BETA 1.0 統計軟體之開發精神,繼續開發統計

    方法,並且改善使用者介面,建立使用者友善的操作方法,協助並免費服務需要

    使用統計的族群,使得統計的應用更加容易,降低使用者的進入障礙。此外,藉

    由網路將 Statistics Software 統計軟體放置於開放的網站上,提供使用者隨時

    隨地下載使用。

    第二節 研究目的

    開發一個使用者友善的統計工具,透過簡易的操作方式,以點選的方式得到

  • 2

    統計分析,讓使用者不必經過繁瑣的運算,便可獲知分析結果,進而從事統計分

    析,從中提高使用者的學習意願,並了解統計相關知識。

    第三節 章節架構

    本論文共區分為 5個章節,第二章探討本統計軟體所應用到之軟體與相關文

    獻,第三章為架設資料庫與統計軟體架構,第四章說明如何操作本軟體所提供之

    統計分析方法與介面介紹,第五章則為本論文之結論,主要將研究結果彙整,提

    出未來發展的方向,持續補強本程式之功能。

  • 3

    第二章 相關軟體探討

    本統計軟體使用 Java 開發,利用網路上現有 Open Sources 開發,如

    JAMA、JFreeChart … 等,另外,建立資料庫連接使用,以下,分別陳述本統計

    軟體所使用之各項技術。

    第一節 Java 程式語言與 Java Web Start 技術

    一、Java 程式語言

    Java 在現實世界中影響愈趨廣泛,如手機、PDA、甚至家電中都有 Java 的

    蹤跡,而 Java 是一個免費且網路資源豐富的程式語言,可於網路上分享其它程

    式設計師所開發出的套件,藉以擴充自身的軟體,因此,Java 迅速成為程式開

    發設計新寵。

    " Java " 是美國昇陽 (SUN) 電腦公司 Java 發展小組所開發的物件導向程

    式語言,前身為 Oak 程式語言,藉由 Web 在 Internet 的盛行,Java 開始廣

    為程式設計師接受使用,是一種具生動、動畫、速度、互動性等特色的程式語言,

    可以從網絡中自動下載。具備以下特色:

    1、 可攜性:突破使用者端機器環境,因此程式可在任何機器上執行 (Write

    Once Run Anywhere)。 Java 屬於跨平台語言,意思是程式設計只要以

    Java 編寫程式一次,只要電腦上有 Java 虛擬機器 ( Java Virtual

    Machine / Java VM ),就能在任何系統操作,如 Windows、MacOS、UNIX

    或 Linux 上都可以執行。

    2、 安全性:提供安全的環境,讓 Java 平台可以獨立執行使用者不信任的

    程式碼,具有阻絕電腦病毒傳輸的功能。因此,任何 Java 應用程式都

    會在預設限制的存取模式下執行,防止程式對系統造成傷害,可應用在

    網路及分散性的環境中。

    3、 動態及可擴充性: Java 程式碼由物件導向模組所構成, Java 不會因

  • 4

    函式庫的更新,而必須重新編譯程式,只有在需要時才會動態的載入。

    相互之間的動態載入以擴充功能,這提高了軟體元件之間的擴充性。

    4、 可快速發展應用程式: Java 程式是由一個個的物件組合而成,每個物

    件都有其各別的意義,因此 Java 多樣性的 API,可大量縮減應用程式

    開發者的撰寫時間。

    5、 使用者圖形介面:在 Java 語言中可利用 AWT 與 Swing 類別庫的功能,

    如按鈕、文字方塊、核取方塊…等等,視覺化程式操作,因此可利用此

    功能,撰寫完整的操作視窗。

    上文提到 Java 平台,平台是執行硬體或軟體的環境, Java 平台為軟體平

    台,包含 Java 虛擬機器 ( Java VM ) 與 Java 應用程式介面 ( Java API ),

    其中 Java VM 是 Java 平台的基礎,架構在以硬體為主的平台上,而 Java API 將

    類別與介面做分類,結合成為 Package。

    Java 撰寫的程式以 Applet 與 Application 最為常見,其中 Applet 是一

    個執行支援 Java 瀏覽器的程式,提供即時互動的使用者介面,具美觀與娛樂性,

    不需安裝程序就能馬上執行。 Application 是ㄧ個獨立的程式,可以直接在 Java

    平台上執行,實作時可利用現成的 Package 撰寫,擴充程式運用的功能降低程

    式開發時間。

    二、Java Web Start 技術

    Java Web Start 在 Java 2 下執行,可做為電腦和 Internet 之間的管道,

    使用者可以從 Web 啟動並管理應用程式。Java Web Start 提供了一個平台獨立、

    安全、強壯的應用程式封裝技術。它允許程式設計師只需透過標準的 Web 伺服

    器,便可將封裝好的 Java 程式呈現在使用者面前。每次啟動時,Java Web Start

    便會檢查 Web 伺服器,比較伺服器與用戶端版本的差異,若不同則會自動下載更

    新版本。Java Web Start 也支援離線使用,只要曾經下載過要執行的檔案,使

  • 5

    用者可藉由瀏覽器快速地啟動 Java 應用程式,因此,使用者可以在任何作業系

    統下使用任何一種瀏覽器,便可很容易地啟動 Java 程式,同時保證執行是最新

    的版本。 有下列幾個特點:

    1、 支援多重 Java 執行環境: Java Web Start 支援多個 JRE 同時存在,

    依程式需求選擇適當的 JRE 執行。

    2、 安全性考量:為了避免網路上的程式系統被破壞, Java Web Start 限

    制下載的程式無法存取本地端的裝置與資源。

    3、 版本辨識與漸進式升級與更新:Java Web Start 在使用者執行程式之

    前會檢查是否有新的版本,確保所執行的程式為最新版。

    4、 節省硬碟空間:Java Web Start 下載不足的部分,不會將更新的程式

    全部下載。

    5、 自動安裝 JRE 與選擇性的函式庫:Java Web Start 設計了自動安裝 JRE

    的機制,以執行新版 JDK 所開發的 Java 程式。

    6、 應用程式管理員:Java Web Start 提供了一個方便的操作介面來管理

    其中的 Java 程式,記錄相關資訊提供給使用者管理與啟動之用。

    (see http://mllee.ice.cycu.edu.tw/crisis/Works/java/jws.htm)

    第二節 設計模式 (Design Pattern)

    建造一棟建築物,事先必須有一定的構想,爾後進行打地基、砌牆…等程序,

    而一個完整的軟體亦由一個一個的程式不斷堆砌而成,程式設計由構想至初具雛

    形,與建築相同,一個有系統的程式設計的模式應遵循 MVC ( Model / View /

    Control ) 結構規劃,如此,其它程式設計者在增加程式(或閱讀程式)時有一定

    的模式可供遵守,程式才會較有秩序,撰寫程式遵守之方法稱之為設計模式。

    Pattern 是目前軟體工程用來解決問題的準則,是由物件導向中發展出來。

    Design Pattern 可以讓系統的架構清楚,也可降低程式設計者開發與除錯的時

  • 6

    間,但是,缺點是要先了解程式整體的架構,並深入到每一步實作的細節,才有

    辦法在一次又一次的程式開發過程中,體會到使用 Design Pattern 的重要性,

    因而會再進入此程式結構時花費較多的時間了解整體的架構。(see 姚長利,

    http://www.dotspace.idv.tw/Patterns/ApplyingPatternsToYourJ2EEWebProjects/ApplyingPatternsToYourJ2EEWebProjects.pdf)

    設計模式 (Design Pattern) 是專家在解決問題過程中,由經驗法則建立

    的規則,協助初學者學習程式快速上手,因此,程式設計者可利用設計模式重複

    使用過去之程式與結構不斷開發新程式,節省開發時程並精簡程式結構。每ㄧ個

    設計模式均可處理一再出現的特定議題,設計模式依照目的設計,包含議題名

    稱、問題描述、解決方法、與結論,因此適當的運用 Design Pattern,可以使

    得系統架構更優良,對於後續的測試、維護,都會有很大的幫助。

    MVC (Model / View / Control) 結構,由 3 種物件組成,把一個程式的輸

    入、處理、輸出流程按照 Model、View、Control 的方式進行分離,Model 為應

    用之物件,View 為結果之輸出方式,Control 是使用者介面對使用者輸入的反

    應。在利用 MVC 控制物件之前,利用使用者介面將物件結合,而 MVC 則將物件分

    離以增加程式靈活性並可重覆使用物件。

    MVC 建立連接之法則作為 Model 與 View 間溝通的工具,View 反映 Model 的

    狀態,即 View 仰賴 Model 的物件型態,當 Model 物件的改變,View 則會自動

    更新。

    圖 1 MVC 結構

  • 7

    Design Pattern 方法之建構包含以下之分類:

    一、目的(Purpose):

    1、 創造性(Creational):有效率的產生、管理與操作物件的過程,建

    立程式指導原則及設計的方向。

    2、 結構性(Structural):設計物件之間的繼承、實現與依賴關係的靜

    態結構,建立完整的程式結構。

    3、 行為性(Behavioral):顯示物件、或類別之間交互影響與分配的合

    理性,使程式執行時有效率,清楚呈現物件功能,使程式的動態結

    構更有彈性。

    二、構成元素(Scope):

    1、 類別(Class):表示類別與其子類別在編譯時為靜態的。

    2、 物件(Object):物件在編譯或執行時為動態或可變動的

    表 1 Design Pattern 分類表

    Purpose

    Creational Structural Behavioral

    Class Factory Method Adapter (class) Interpreter

    Template Method

    Scope

    Object

    Abstract Factory

    Builder

    Prototype

    Singleton

    Adapter(object)

    Bridge

    Composite

    Decorator

    Façade

    Flyweight

    Proxy

    Chain of Responsibility

    Command

    Iterator

    Mediator

    Mememto

    Observer

    State

    Strategy

    Visitor

    (see Erich Gamma、 Richard Helm、 Ralph Johnson、 John Vlissides, 1995)

  • 8

    第三節 Open Source

    Open Source (開放原始碼) 的主要目的是為了要使開放原始碼的軟體得以

    不斷的開發與改良,使軟體可以藉由程式設計師的個別需求修改與增加程式碼,

    可以不斷的擴展軟體,增強軟體可靠度和擴大軟體功能。

    Linux 承襲 Open source 的精神,所有 Linux 程式碼均可免費取得,吸

    引許多愛好者增加並改進 Linux 之功能,從一個功能陽春的軟體發展成

    為一個可威脅微軟的作業系統,已成為大陸官方的作業系統。因此開放

    原始碼,讓外界可以參與軟體的改進工程,軟體才能更近乎使用者需求

    與完整發展。

    藉由 Open source 的特性,撰寫軟體可透過網路找尋相關的資源,加速軟

    體開發的速度,而本統計軟體主要利用下列幾個 Package 開發:

    一 JAMA

    JAMA 由 MathWorks 與 NIST 共同開發的 Package。相關資源在於

    http://math.nist.gov/javanumerics/jama/ 網站中可供查詢。

    JAMA 是一個提供基本線性代數運算的工具,包含常見的矩陣運算功能,可

    解決大部分線性代數的需求,共包含 6 個 classes : 1.Matrix 、 2.

    CholeskyDecomposition 、 3.LUDecomposition 、 4.QRDecomposition 、 5.

    SingularValueDecomposition、6.EigenvalueDecomposition。

    本軟體的統計方法多利用 Jama.Matrix 運算,Matrix 提供了矩陣的加減乘

    除、反矩陣、轉置、行列式值…等矩陣基本計算。利用 JAMA ,使我們在使用多

    個變量的矩陣運算更為方便。

    二 JSCI

    詳細的資訊可從 http://jsci.sourceforge.net/ 中獲得,並下載最新版

    本。

  • 9

    JSCI 主要包含數學、物理、化學、生物…等自然科學領域的 Java code 開

    放 原 始 碼 Package , 其 主 要 目 標 是 呈 現 準 確 的 基 礎 科 學 。 其 中

    JSci.maths.statistics 內包含許多統計的分配,可供查詢分配的機率值、機率

    值的反函數…等相關數值,包含二項分配、卡方分配、指數分配、常態分配、卜

    瓦松分配、T分配、F分配…等。

    三 JFree

    在 JFree 官方網站中 http://www.jfree.org/ 有許多Packages可供下載

    使用,並且有詳細的說明檔供參考。在此,介紹 JFreeChart 與 JFreeReport。

    1、 JFreeChart ( http://www.jfree.org/jfreechart/ )

    JFreeChart 是一個繪製圖表的 package,支援 2D、3D 圓餅圖,長條圖,

    線圖,散佈圖,時間序列圖…等。 JFreeChart 可被應用在 Applet,Servlets

    和 JSP 裡使用。Statistics Software 軟體繪圖之功能利用此 Package 開發

    繪製。

    2、 JFreeReport ( http://www.jfree.org/jfreereport/ )

    JFreeReport 可控制輸出的格式,輸出的型式包含文字、數字、圖、表,

    可先在螢幕上預覽輸出格式,並且儲存成 pdf、.xls (Excel)、HTML、 XML、

    及文字檔;因此,本軟體在輸出統計報表使用 JFreeReport 建立輸出樣式,

    並藉此提供使用者報表輸出,以便利使用者在其它編輯工具建立報告(或簡

    報)。

  • 10

    第四節 JDBC 與 SQL 的概念

    一 JDBC

    JDBC 是 Java 所定義的存取資料庫的通用程式介面 ( Programming API ),

    可以讓 Java 應用程式執行 SQL 指令存取關聯式資料庫的記錄,利用資料庫廠商

    提供的 JDBC 驅動程式,讓 Java 的程式在存取資料庫的時候具有透通性,不用

    考慮所使用的是哪一家的資料庫。

    JDBC 用於資料庫連接,發送 SQL 語句,回送資料庫處理結果。利用 JDBC

    程式設計師只需將程式編寫一遍或更改一次,就可將應用程式變更為最新版本。

    JDBC 驅動程式的種類共有四種:

    1. JDBC-ODBC 橋接器 ( JDBC-ODBC bridge ): Java 程式可以存取微軟

    ODBC 資料來源的資料庫系統。

    2. 原生API的Java驅動程式(A Native-API partly Java driver):將 Java

    程式的 JDBC 呼叫轉換成專屬資料庫系統的原生 API 呼叫。

    3. Java 網路協定驅動程式(A Net-protocol all Java driver):將 Java

    程式的 JDBC 呼叫轉換成資料庫系統專屬的網路協定,再由伺服器轉換

    成資料庫系統的 API 呼叫。

    4. Java 原生通訊協定驅動程式 (A Native-protocol all Java driver):

    將 Java 程式的 JDBC 呼叫直接轉換成資料庫系統原生通訊協定的 API

    呼叫,以便客戶端直接連線資料庫伺服器。

    Java 程式使用 JDBC 連結資料庫後,可以使用 SQL 指令進行資料庫查詢。 並

    建立介面使用 SQL 擷取資料、查詢資料、建立資料…等資料庫功能,管理資料庫。

  • 11

    二 SQL 結構性查詢語言

    SQL ( Structured Query Language ) 是由 IBM 在 1970 年代開發的,接著

    成為「ANSI」( American National Standards Institute ) 標準互動式程式語

    言,用於關聯式資料庫 ( Relational Databases ) 的一種資料庫查詢語言, SQL

    指令語法可以用來存取和更新資料庫的記錄,目前 Access、SQL Server、

    Informix、Oracle 和 Sybase 等資料庫系統都支援 ANSI 的 SQL 語言。

    SQL 語言是仿英文的自然語法,資料庫所使用的 SQL 語言已經成為一個查詢

    資料庫的標準語言。各資料庫所提供的 SQL 語言在功能上會略有差異,但功能

    的差異不大,使用資料庫不需花費太多時間學習各家資料庫語言結構,縮減資料

    庫學習時間,因此入門上較為容易。

    資料庫的語法 (SQL) 分為三大類別:

    1、 DDL 資料定義語言(Data Definition Language) 主要用來定義概念和

    實體階層的內容與其存在關係,也就是描述資料庫中的資料。

    2、 DCL 資料控制語言(Data Control Language) 是用來控制資料庫的使用

    權限與安全設定的語法。

    3、 DML 資料處理語言 (Data Manipulation Language)允許使用者存取或

    處理資料庫中的資料。(see http://www.tceb.edu.tw/~wkb/dbase/)

    第五節 資料庫(Databases)

    資料庫是現今科技中主要應用之ㄧ,舉凡各個產業,仰賴資料庫彙整現有資

    料,因此,公司必須將資料電腦化建檔,蒐集成永久儲存的資料,供各個應用程

    式使用。

    資料庫是由資料表 ( Tables ) 所形成的集合,而資料表則是記錄 ( Record )

  • 12

    所成的集合,每筆記錄都包含不同的欄位 ( Fields ),資料庫的基本組織架構

    可以用下圖來說明:

    圖 2 資料庫架構圖

    資料庫管理系統 ( DataBase Management System,DBMS ) 是一個套裝軟體,

    負責處理使用者(或應用程式)存取資料的要求,所以資料庫系統為一個供使用

    者建立並維護資料庫的軟體。現今電子商務發展快速,在各大網站均可窺知資料

    庫與 Web 的緊密結合,因此使用者透過網路存取資料庫更加快速方便,充分發揮

    資料庫的功能。

    目前資料庫管理系統根據資料模式、資料正確性、資料存取更新三方面來區

    分資料庫管理系統,區分為 4個類型:包含關聯式資料庫管理系統、階層式資料

    庫管理系統、物件導向式資料庫管理系統、網際網路資料庫管理系統:

    一 關聯式資料庫管理系統(Rational Database Management System)

    為目前使用最廣泛之資料庫管理系統模式,關聯式模型代表資料庫中所有資

    料如同二維表格,稱之為關聯。關聯式資料庫在資料模式上,一筆一筆的記錄為

    處理單位,將記錄以表格方式組織,輸出與輸入均是表格檔案,表格與表格之間

    的相關性是透過欄位的資料值來聯繫,運算部份另由程式來完成。關聯式資料庫

    管理系統理論基礎是關聯模式,關聯模式是ㄧ種看待資料、組織資料、表達資料、

    使用資料的方法。經由關聯模式,導出資料模式、資料完整正確性、及資料應用,

    形成關聯式資料庫管理系統。目前關聯式資料庫管理系統之資料庫管理系統有

    DB2、MySQL。(see 唐旻瑗,http://w3.ocit.edu.tw/ben/foxpro6/article/chinese/ch01/page02.htm)

  • 13

    二 物件導向式資料庫管理系統(Object-Oriented Database Management

    System)

    為新興之資料庫管理系統模式,在 1990 年代逐漸被接受,處理資料結構和

    運算都很複雜,資料結構主要為物件,物件包括了「資料」以及其所相應的「運

    算」。物件之間為獨立的,提供單一對外介面,使物件成為一個獨立的單元,不

    受其它物件、應用程式改變而影響物件本身。

    物件導向式資料庫管理系統由於技術新,尚不普及導致缺乏標準,另ㄧ方

    面,傳統關聯式資料庫已相當成熟,物件導向式資料庫的使用仍不普遍。目前在

    物件導向資料庫上的發展有兩種: 物件導向式資料庫系統 (Object-Oriented

    Database Systems)、物件關聯式資料庫系統 (Object-Relational Database

    Systems)。

    三 階層式資料庫管理系統(Hierarchical Database Management System)

    階層模式運用紀錄與"父子關係"架構資料。紀錄為欄位之集合,每ㄧ個欄

    位包含之資料值形成一個紀錄;"父子關係"為一對多之關係,是兩個階層式檔

    案間之關係,檔案與檔案間可能包含一個或多個欄位,也可能包含一筆或多筆之

    紀錄;階層模式是由上而下,如樹狀般結構,一層一層的以階層方式來組成,最

    普遍的階層式資料庫管理系統是 IBM 的 IMS (Information Management

    System)。

    四 網際網路資料庫管理系統(Network Database Management System)

    網際網路資料庫管理系統以單筆記錄為處理單位,將記錄以網路結構方式組

    織起來,也可以說是階層式資料庫管理系統的擴充。網際網路資料庫管理系統整

    合網際網路系統、資料庫系統以及資訊系統發展等技術,網際網路資料庫管理系

    統是企業各種資訊軟體的基礎,可以減少資料的重複儲存,加快反應的速度,在

    以 Web 為基礎的平台下,可將資料以多媒體的方式儲存與展示,在有網路的地

  • 14

    方,隨時均可進行作業,另外開發友善的人機介面,降低應用系統架構及訓練成

    本,系統維護時也僅需更新網站的軟體即可。 (see 諶家蘭,2002)

    市面上資料庫管理系統有許多種可供使用,像 Oracle、MySQL、MS SQL

    Server、Sybase、Informix、PostgreSQL…等,各有其優劣,目前本統計軟體提

    供之可連結資料庫包含 Access、MS SQL、MySQL 與 PostgreSQL 四個資料庫管理

    系統。

    一 MySQL 資料庫系統

    1995 年五月,TcX 發展出 MySQL 1.0。到目前為止, MySQL 資料庫是最廣

    為使用的資料庫系統,如知名入口網站 YAHOO,美太空總署 NASA 均使用 MySQL

    來處理大型資料。MySQL資料庫管理系統可上MySQL官方網站 ( www.mysql.com )

    取得,網站上提供詳細且完整的安裝說明與介紹,有兩種授權模式:一為包含支

    援服務的商業授權,另ㄧ則為依據開放原始碼精神的使用免費資料庫。

    MySQL 在持續的努力下,可相容於 UNIX、Windows、Linux 和 OS/2 等作業

    系統。具有功能強、使用簡便、管理方便、運行速度快、安全性強等優點,且大

    部份程式開發工具或語言都可以跟 MySQL 連接。

    二 PostgreSQL 資料庫系統

    PostgreSQL 是由美國加州大學柏克萊分校開發的 POSTGRES 版本為基礎的

    物件導向資料庫管理系統(ORDBMS)。 PostgreSQL 資料庫系統可於 PostgreSQL

    官方網站 ( http://www.postgresql.org ) 取得,網站上提供詳細且完整的安

    裝說明與介紹。 PostgreSQL 承接柏克萊 POSTGRES 的 程式碼,支持事務、子查

    詢,提供多版本並行控制,相容於 SQL-2/SQL-92 和 SQL-3 語法、數據完整性檢

    查等特性的數據庫管理系統。PostgreSQL 可用於所有的平台,為目前支援平台

    最多的資料庫管理系統之ㄧ,可獲得 C,C++,Java,和 python…等多種語言支

    援,是全功能的免費自由軟體資料庫。

  • 15

    第三章 Statistics Software 統計軟體

    Statistics Software 統計軟體自 2003 年由蔡志青、張瑜容二位研究生開

    始發展,至今約ㄧ年半,Statistics Software BETA 1.0 在 2004 年 6 月公開發

    表。接著,陸續發表 beta 版本之 Statistics Software,經由不斷的測試,於

    2005 年 6 月發表 Statistics Software BETA 3.0。由於本軟體在 Java 環境中

    架構,操作本統計軟體需先至 http://java.sun.com/ 下載 JDK1.4+ 執行本軟

    體。 (see 蔡志青、張瑜容,2004)

    第一節 Statistics Software 設計概念

    Statistics Software 參考 Design Pattern 中 M/V/C 的概念,規劃

    Statistics Software 統計軟體,首先規劃統計軟體架構,爾後加入各種統計方

    法,利用 Jsci 與 JAMA 撰寫統計方法之各種 CLASS 組合成為 javastat.jar;

    並製作統計方法 Dialog 視窗,對話視窗結合成為 statDialog.jar;繪圖方面,

    利 用 上 ㄧ 章 所 提 到 的 JFreeChart 編 寫 所 需 圖 表 呈 現 方 式 , 成 為

    statgraphics.jar,此為 Model 的部份。而 View 的部分,利用 Model 的各種方

    法構成統計方法之 Module,由使用者選擇之統計模組呈現圖表與統計結果。

    下圖為 Statistics Software 的設計概念流程圖:

    圖 3 Statistics Software 流程圖

  • 16

    第二節 架設資料庫

    本軟體架構了 4 個資料庫管理系統:分別為 Access、MS SQL、MySQL 與

    PostgreSQL ,由於本軟體利用 Java 撰寫,必須利用 JDBC 作為橋接器,連接資

    料庫與應用程式。

    利用前一章資料庫中提供之網址下載並安裝資料庫,完成資料庫架設之後,

    我們可以在單機上進行資料庫的存取,另外,透過 Web 與資料庫結合,使用者

    便可利用網路隨時連接資料庫取得資料,資料庫便可透過網路提供多個使用者操

    作,充分發揮資料庫之功能。

    下圖為 JDBC-ODBC 橋接器之示意圖。

    圖 4 應用程式利用 JDBC-ODBC 橋接器與資料庫連接圖

    第三節 統計軟體架構

    本統計軟體主要分為檔案、統計方法、指令、統計圖、輔助說明等部分,說

    明如下:

    一 檔案 ( File )

    在做統計分析之前,須先將資料讀入統計軟體之中以供分析,因此提供兩種

    資料讀取方法:一為由檔案載入,可讀取之檔案為“.txt"文字檔與試算表".xls"

    檔,另外則為利用資料庫載入欲分析之資料表。

  • 17

    二 統計方法 ( Statistics )

    統計分析方法已加入基本之統計分析,在各領域應用統計分析部份,會持續

    加入提供使用,以下介紹目前 Statistics Software 提供之統計分析方法。

    1. 探索性資料分析 ( Exploratory Data Analysis )

    分成 2個部份:〝值〞資料的探索與〝量〞資料的探索,藉以了解資料結構。

    統計資料分析最初必須對現有資料結構有基礎的認識,因此,在做任何統計分析

    之前,描述性統計的資料探勘,可以提供我們對整體資料性質的基本認識,瞭解

    變數之基本架構,進而選擇適當之統計分析方法解讀並分析資料。

    2. 迴歸分析 ( Regression Analysis )

    分成 2個部份:線性迴歸與廣義線性模型

    I. 線性迴歸 ( Linear Regression )

    線性迴歸模型如下: εβ += XY 其中 Y 為隨機變數, X 為一獨立的變

    數, β 為待估的參數向量,ε 為一隨機變數向量,通常假設分配為 Normal

    分布,期望值與變異數分別為 2)Var( 0)E( σεε == , 。

    II. 廣義線性模型 ( Generalized Linear Model )

    迴歸分析主要針對連續型的資料作分析,而實際資料中連續型與非連

    續型的變數同時存在,在處理類別資料時,利用 dummy variables 對資料

    做轉換,dummy variable 以 1 或 0 來轉換,透過 dummy variable 將類別

    變數轉換成易於分析的模式,以廣義線性模型應用最廣。

    1972 年 Nelder 與 Wedderburn 將廣義線模推廣至 Non-normal 分配

    的反應變數,GLM 的變數包含了連續型資料與名目資料,其模型與線性模型

    ( Linear model ) 相似,當 GLM 分配為 Normal 與 Link function 為

    Identity link 時,GLM 退化為線性模型。

    模型假設為: χβηµ ==ΥΕ= )](g[)g( , g 為 Link function,GLM 的

  • 18

    Link function 有下表數種,其中以 Log Link 與 Logit Link 最為常用。

    表 2 Link function

    Link )g(µη = )(g-1 ηµ =

    Identity µ η

    Log )log(µ ηe

    Inverse -1µ -1 η

    Inverse square -2µ -1/2 η

    Square root µ 2 η

    Logit -1

    logµµ

    ,(又稱 )Logit(µ )ηe1

    1 +

    Probit )(-1 µΦ ) (-1 ηΦ

    Complmentary ))-log(-log(1 µ )]exp[-exp(-1 η

    使用 GLM 最初應決定 Link function,爾後便可依此建立模型,經由

    IRLS ( Iterated Reweighted Least Square ) 不斷地遞迴求解,可得到

    一組解,參數解如下:

    )W(X)X]W([X t^

    t1-t

    ^t

    1t

    ^

    tzβββ =+

    其中 ( ) ( )( )ttttn

    t

    t

    t

    npnn

    p

    p

    yWX

    z

    zz

    z

    xxx

    xxxxxx

    βµββ ˆˆˆ X 121

    21

    22221

    11211

    −+=

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    ⎥⎥⎥⎥⎥

    ⎢⎢⎢⎢⎢

    = −M

    L

    MOMM

    L

    L

    Logit Link n1,...,i, ),b(~y iii =πm

    ( ) ( )

    ( )( )

    ( )⎥⎥⎥⎥

    ⎢⎢⎢⎢

    −−

    =

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    nnnnnn m

    mm

    W

    m

    mm

    ππ

    ππππ

    β

    π

    ππ

    µ

    µµ

    βµ

    100

    010001

    222111

    22

    11

    2

    1

    L

    MOMM

    L

    L

    MM,

  • 19

    Log Link n1,...,i, )Poi(~y ii =µ

    ( ) ( )

    ⎥⎥⎥⎥⎥

    ⎢⎢⎢⎢⎢

    ==

    ⎥⎥⎥⎥

    ⎢⎢⎢⎢

    =

    βχ

    βχ

    βχ

    χβ β

    µ

    µµ

    βµ

    n

    2

    1

    e00

    0e000e

    , e21

    L

    MOMM

    L

    L

    MW

    n

    不同資料型態所需使用的統計方法各有不同,下表依照自變數、應變數的型

    態區分不同的統計方法。

    表 3 不同尺度的統計分析方法

    Explanatory variable scale(自變數) Binary Response variable(應變數)

    Binary

    1. Contingency tables

    2. Logistic regression

    3. Log-linear models

    Nominal with more than two

    categories

    1. Generalized logistic regression

    2. Log-linear models

    Continuous Dose-response models including Logistic

    regression

    Some continuous and some categories Generalized logistic regression models

    (see 1. P. McCULLAGH and J.A. Nelder,1989。 2. John Fox, 2002。)

    3. 多變量分析 ( Multivariate Analysis )

    探討多個變數間之關聯性,分成 3個部份:主成分分析、區別分析、 K-Means

    分類法。

    I. 主成分法 ( Principal Components Analysis ):目的在使每一個成分

    能夠代表最大的觀察變異量,以最少的直交成分來解釋最大的變項變異

    量,可得到唯一解。

  • 20

    II. 區別分析 ( Discriminate Analysis ):用於群體數已知的情況下的分

    類法,主要目的為了解群體之差異,當應變數是名目尺度,自變數為連

    續型的計量資料時使用。常用於將人員或事物分類到不同群體,並分析

    預測變數區別能力的相對重要性。

    III.K-Means 群集分析法:與區別分析不同,是一個未涉及分群數或未知群

    個體之特性下假設做出分群的方法,主要目標是要在大量資料點中找出

    具有代表性的資料點,然後在根據這些群中心,不斷反覆迭代,得到最

    佳之分群。

    4. 估計 ( Estimation )

    估計主要是根據樣本所提供的資訊,推估母體未知參數之方法。

    本主題區分為單母體、雙母體之平均數估計與比例估計,加上成對樣本之

    區間估計。

    I. 點估計 ( Point estimation ):利用樣本資料,求得估計值以表示未

    知參數的方法。

    II. 區間估計 ( Interval estimation ):是一個隨機區間,由樣本資料

    求出點估計值,再藉由點估計量抽樣分配的性質,求出兩個數值而構

    成一個區間,使得參數之真實值落在此區間內,具有某種機率水準區

    間估計。

    5. 檢定 ( Test )

    假設檢定是對母體參數提出假設,利用樣本訊息,由樣本資料來驗證對母體

    參數之假設是否成立之統計方法。

    本主題包含:單母體、雙母體與成對樣本資料之統計量檢定,變異數分析,

    卡方檢定。

  • 21

    6. 存活分析 ( Survival Analysis )

    存活分析主要探討存活變數的推論方法,這個變數所量測的是一段時間的長

    度,由起點到某個“事件"所發生時間長度 ( Time to an event of interest )。

    存活資料最大的特色是當事件發生的時間無法確切得知時,資料中會包含不完整

    的觀測值。因此存活分析常被應用在生物醫學方面的研究。

    此 部 份 , 本 軟 體 放 入 Proportional Hazard Model 、 Kaplan-Meier

    Estimate,Log-rank Test 與 Wilcoxon Test 等四項常用於存活資料之分析方

    法。

    7. 機率 ( Probability )

    提供各種統計分配機率表供使用者查詢,包還常用之標準常態分配、T 分

    配、F分配、卡方分配。

    三 指令 ( Commands)

    利用指令輸入方式,使用者可針對需求輸入欲計算的統計量,得到計算結

    果。

    I. Splus:利用 Java Bean 將 Splus 之指令輸入在統計軟體的指令視窗,

    經由 Statistical Software 介面傳送至伺服器計算,並將結果回送至

    使用者端。

    II. Java:有鑑於軟體除視窗化點選需求之外,使用者需要依然需要指令

    輸入功能,因此,提供輸入 Java 語法的工具,使用者僅需具備基礎之

    Java 程式語法即可進行運用,在統計軟體的指令視窗輸入欲計算

    javastat 提供函數之 Java 語法,計算並得到結果。

  • 22

    四 繪圖 ( Graph)

    包含基本的散布圖( Scatter Plot),折線圖( Line Chart),長條圖( Bar

    Chart),圓餅圖( Pie Chart ),直方圖( Histogram Chart ),迴歸相關圖表

    ( Regression ),存活相關圖表( Survival Analysis ),多變量分析相關圖表

    ( Multivariate Analysis )。

    五 輸出

    輸出的部份分為統計分析結果輸出與圖表輸出,目前統計分析結果輸出可選

    擇存檔類型為 PDF、EXCEL、HTML、CSV、或 TEXT;圖表輸出可存為 PDF 、SVG、

    PNG、JPEG 四種檔案。

    六 輔助說明 ( Help)

    目前已放入 javastat 之說明檔 (API),並且舉例說明使用方法,另一方面

    預計將放入統計方法之解說,介紹統計方法使用時機,與計算方法;因此,除了

    可查詢 javastat 方法之外還可學習統計基本概念。

  • 23

    第四章 操作 Statistics Software 統計軟體

    首先至昇陽網站 ( http://java.sun.com/ )下載並安裝 Java 1.4 以上的版

    本,以執行本程式,並下載本統計軟體。(下載網址:參見摘要)

    第一節 啟始畫面

    一 啟動

    執行 Statistics Software 統計軟體,進入資料視窗,Statistics

    Software 提供之功能有 File (檔案)、Statistics (統計方法)、Commands

    (指令)、Graph (圖表)、Help (輔助說明) 等工具,以下會依各項功能個別

    說明,並示範使用方法。

    圖 5 Statistical Software 啟始畫面

  • 24

    二 資料載入

    分為讀入資料檔與資料庫讀取二種方式。

    圖 6 資料輸入

    1. 讀入資料檔:File— Import Data—From File

    由路徑中找尋所欲分析之資料檔,目前可讀入 .txt 檔與 .xls 檔。若讀入

    資料為.txt 檔,系統會詢問文字檔之第一行是否為變數名稱。

    圖 7 檔案讀取

    2. 讀取資料庫:File--Import Data—From DataBase

    使用者依序輸入欲連結之資料庫 URL、使用者、密碼,即可與資料庫連接,

    另外亦可輸入 SQL 語法;其中密碼區塊在考量安全性原則下,執行後自動清除密

    碼,以免密碼外洩。

    圖 8 資料庫讀取

  • 25

    第二節 統計方法

    統計方法之結果均利用 R、S-plus 軟體驗證,確認無誤。

    一 探索性資料分析 (Exploratory Data Analysis)

    分別為〝質〞與〝量〞資料描述,探查變數之基本架構,進而進行其它統計分析。

    圖 9 探索性資料分析 Exploratory Data Analysis

    1. 質(Qualitative Data)

    Statistics —Exploratory Data Analysis—Qualitative Data

    選取類別資料進入敘述性統計量分析,得到類別變數之頻率。

    圖 10 敘述統計 (類別資料)

    2. 量 (Quantitative Data)

    Statistics —Exploratory Data Analysis—Quantitative Data

    選取連續型資料進入分析,並輸入分組之組數,得到各組敘述性統計量分析。

    圖 11 敘述統計 (連續資料)

  • 26

    二 迴歸分析 ( Regression Analysis )

    1. 線性迴歸 (Linear Regression)

    圖 12 迴歸分析

    Statistics — Regression Analysis — Linear Regression — Multiple

    /Simple Linear Regression

    左邊為迴歸 Model 視窗,右為 Result 視窗,在 Model 的部份選取自變數與

    應變數,進行計算;另外,在 Result 的部份可以依需求選取是否繪製殘差圖與

    迴歸配適圖。

    圖 13 線性迴歸分析

  • 27

    2. 廣義線性模型(Generalized Linear Model):

    圖 14 廣義線性模型

    I. 邏輯斯迴歸 (Logistic Regression)

    Statistics— Regression Analysis — Generalized Linear Model —

    Logistic Regression

    分為二部份說明:原始資料與整理過資料。

    原始資料 (Raw data)之邏輯斯迴歸分析,分別就資料型態選入類別變

    數與連續型變數,由於為原始資料型態,Size 的部份無需選取。若自變數

    全數為類別資料,則系統會自動對資料整理為 Arrangement Data,呈現於

    輸出報表上,提供使用者利用整理過之報表檢視資料,較易解讀資料結構。

    而下方資料分析為連續型資料之邏輯斯迴歸分析,分別陳列變數估計表、

    ANOVA 表、殘差表與相關分析表。

    圖 15 Logistic Regression ( Binary Data )

  • 28

    整理過資料在變數選取的部份,類別資料與連續型資料可個別存在也可

    同時存在進行分析。分別就資料型態選入 Categorical 或Continuous,Size

    的部份為該反應之總數,Response 輸入應變數。下圖之分析結果為資料僅

    存在類別變數的邏輯斯迴歸分析,分別陳列變數估計表、ANOVA 表、殘差

    表與相關分析表。(smoke.txt)

    圖 16 邏輯斯迴歸 (Logistic Regression)

    II. 對數線性模型 (Log-Linear Model)

    Statistics — Regression Analysis — Generalized Linear Model —

    Log-Linear Model

    類別資料與連續型資料可個別存在也可同時存在進行分析。分別就資

    料型態選入自變數,再選取 Size 與 Response,其中 Size 與 Response 均

    為連續型變數。( ship.txt ) 當反應變數小的情況做分析,下圖當自變數

    資料型態為類別變數時的對數線性模型分析,將變數選入類別方框,應變

    數選入 response,並選取該類別總數,進行計算,分別陳列變數估計表、

    ANOVA 表、殘差表與相關分析表。

  • 29

    圖 17 對數線性模型 Log-Linear Model

    上面分別為 MODEL 的部份,下圖為 GLM 分析中(含 logistic regression 與

    log-linear model)plot 的部份,可選取配適值、與各殘差圖做散佈圖。分別選

    取 x軸、y軸之值繪圖。

    圖 18 GLM scatter plot

  • 30

    三 多變量分析 ( Multivariate Analysis )

    圖 19 多變量分析

    1. 主成分分析法 : Statistics — Multivariate — Principle

    Component Analysis

    選擇變數,並選取使用共變數矩陣或共變數矩陣,輸入顯入水準,按下 OK 鈕

    即可產生分析報表。

    圖 20 主成份分析 Principle Component Analysis

  • 31

    2. 區別分析: Statistics — Multivariate — Discriminant Analysis

    分別選取群組變數(數值型態),與自變數,進行變數區別分析。

    圖 21 區別分析 Discriminant Analysis

    3. K-Means 群集分析法: Statistics — Multivariate — Kmeans

    選取分群之指標變數,並事先輸入欲分群的個數,進行分群。下方圖輸出結

    果,可分別看出觀測值分配之情況。

    圖 22 K-Means

  • 32

    四 估計 ( Estimation )

    以下各估計方法均利用 T Interval 操作示範。

    圖 23 估計 Estimate

    1. 單一樣本:Statistics — Estimation — One Sample — Mean — T

    Interval

    選擇分析變數,輸入顯著水準,輸出包含樣本數、平均數、樣本標準差、與

    信賴區間。

    圖 24 單樣本平均數估計 One Sample Mean Estimate

  • 33

    2. 雙樣本:Statistics — Estimation — Two Sample — Mean — T

    Interval

    分別選擇兩樣本之估計變數,並輸入顯著水準,分別計算兩樣本平均數、平

    均數差、兩樣本標準差、與兩樣本平均數差信賴區間。

    圖 25 雙樣本平均數估計 Two Sample Mean Estimate

    3. 成對樣本:Statistics — Estimation — Match Sample — T Interval

    選擇分析變數,輸入顯著水準,計算成對樣本平均數差、兩樣本標準差、與

    兩樣本平均數差信賴區間。

    圖 26 成對樣本平均數估計 Match Sample Mean Estimate

  • 34

    五 檢定 ( Test )

    以下各個檢定方法均利用 T Test 操作示範。

    圖 27 檢定 Test

    1. 單一樣本:Statistics — Tests — One Sample — Mean — T Interval

    選擇分析變數,並輸入虛無假設欲檢定的值,選擇檢定方向(左尾、右尾、

    雙尾),計算樣本平均數,進行虛無假設檢定分析。

    圖 28 單樣本平均數檢定 One Sample Mean Test

  • 35

    2. 雙樣本:Statistics — Tests — Two Sample — Mean — T Interval

    選擇分析變數,計算兩樣本平均數差,輸入欲檢定之平均數差,並選擇檢定

    方向(左尾、右尾、雙尾),計算樣本平均數,進行虛無假設檢定分析。

    圖 29 雙樣本平均數檢定 Two Sample Mean Test

    3. 成對樣本:Statistics — Tests — Match Sample — T Interval

    分別選擇樣本分析變數,輸入檢定之平均數差,選定檢定方向(左尾、右尾、

    雙尾),計算成對樣本平均數,輸入虛無假設欲檢定的值。

    圖 30 成對樣本平均數檢定 Match Sample Mean Test

  • 36

    4. 變異數分析:Statistics — Tests — Analysis of Variance

    選擇平均數相等檢定之變數,並決定顯著水準,即可產生變異數分析表。

    圖 31 單因子變異數分析 One-Way Anova

    5. 卡方檢定:Statistics — Tests — Chi-square Test

    分別選定行變數與列變數,檢定兩變數是否獨立,輸入顯著水準,分析結果。

    圖 32 卡方分析 Chi-square Test

  • 37

    六 存活分析 ( Survival Analysis )

    1. Proportional Hazard model:Statistics — Survival Analysis —

    Proportional Hazard models/ Kaplan-Meier estimate

    分別輸入時間變數、設限變數、自變數,即可產生報表。

    圖 33 Kaplan-Meier estimate

    2. Log-rank test:Statistics — Survival Analysis — Tests —

    Log-rank test/ Wilcoxon test

    分別輸入兩群變數之設限時間變數與時間變數進行檢定

    圖 34 Log-rank test

  • 38

    七 機率 (Probability)

    1. 機率表:Statistics — Probability — Tables — Standard Normal

    Distribution

    舉例列出 Standard Normal Distribution 各顯著水準之機率,使用者另外

    可查詢 T、F、Chi-square 分配之機率表。

    圖 35 標準常態分配 Standard Normal Distribution

    2. 分配:Statistics — Probability — Distributions

    利用下表上方之對話框選取分配,輸入欲查詢之變數範圍、平均數、標準差,

    即可得到下表下方之對話框,顯示該範圍之涵蓋機率。(下表為求取 N(0,1)分配,

    變數範圍 0~3 的涵蓋率)

    圖 36 分配 Distributions

  • 39

    第三節 指令 (Commands)

    包含 Java 語言與 S-Plus 程式語言。

    圖 37 指令 Command

    Commands — Java / Splus

    利用 Splus 說明,在上方之文字輸入方塊輸入 S-plus 指令,將欲執行之指

    令反藍圈選,按下 RUN,經由 Java Bean 傳送至伺服器計算,並將結果回送至

    使用者端,傳回結果於指令視窗下方之文字方塊中顯示。

    圖 38 S-plus 指令視窗

    在 JAVA 之部分,在 Statistics Software 的指令視窗輸入欲分析之統計計

    算之 Java 語法,利用 javastat 提供的建構子與方法,計算並得到結果。

  • 40

    第四節 繪圖 (Graph)

    圖 39 繪圖功能 Graph

    一 散布圖 ( Scatter Plot)

    Graph — Scatter Plot

    依照要檢視的變數分別選取橫、縱軸變數,若變數為複數時(橫、縱軸變數

    個數應相等),利用 shift/ctrl 選取,按下確定,產生散佈圖。

    圖 40 散布圖 Scatter Plot

  • 41

    二 折線圖 ( Line Chart )

    Graph — Line Chart

    依照要檢視的變數分別選取橫、縱軸變數,若變數為複數時(橫、縱軸變數

    個數應相等),利用 shift/ctrl 選取,按下確定,即可產生圖表。

    圖 41 折線圖 Line Chart

    三 長條圖(Bar Chart)

    Graph — Exploratory Data Analysis –Qualitative Data--Bar Chart

    依照要檢視的變數選取,變數為複數時,利用 shift/ctrl 選取,產生圖表。

    圖 42 長條圖 Bar Chart

  • 42

    四 圓餅圖 ( Pie Chart )

    Graph — Exploratory Data Analysis —Qualitative Data—Pie Chart

    依照要檢視的變數選取,若變數為複數時,利用 shift/ctrl 選取,按下確

    定,即可產生圖表。

    圖 43 圓餅圖 Pie Chart

    五 直方圖 ( Histogram Chart )

    Graph— Exploratory Data Analysis —Quantitative Data— Histogram

    Chart

    依照要檢視的變數選取,變數為複數時,利用 shift/ctrl 選取,並輸入分

    群數,即可產生圖表。

    圖 44 直方圖 Histogram Chart

    在圖表方面另外仍有迴歸相關圖表(Regression)、存活相關圖表 (Survival

    Analysis)、多變量分析相關圖表(Multivariate Analysis),使用者可依個別需

    求使用。

  • 43

    第五節 輸出 (Output)

    一 報表輸出

    以 Simple regression 為例,在輸出報表中(如圖 45)按下 Print Preview 按

    鈕,產生報表之預覽格式,如圖 46,可將報表輸出為 PDF、Excel、Html、CSV、

    Text,亦可直接列印,預覽之報表下方的文字可於圖 45 上方的文字方塊中變更。

    圖 45 Layout Preview

    圖 46 Report Layout

  • 44

    二 圖檔輸出

    利用線圖示範,選擇輸出圖片類型,接著選取輸出路徑,即可至該位置存取

    圖片檔。

    圖 47 Chart Layout

    第六節 輔助說明 ( Help )

    圖 48 HELP 輔助說明

    (see 1.Charlie Calvert 、Margie Clavert ,2003。 2 蔡志青, 2004。 3 張瑜容, 2004

    年。 4 洪國勝,呂高旭,陳惠雀,2004。 5 葉榮木, 2003。)

  • 45

    第五章 結論

    第一節 結論

    Statistics Software BETA 1.0 在 2004 年 6 月公開發表, 2005 年 6 月發

    表 Statistics Software BETA 3.0 ,Statistics Software 統計軟體發展至今

    已初具雛形,隨著功能的增加,陸續公開發表測試版本提供下載測試,期間亦不

    斷以使用者觀點創造更利於使用者使用的介面,讓使用者在操作上更容易上手,

    使用者可感受到我們在程式上、軟體功能上ㄧ直不斷的努力;未來,依然站在服

    務統計需求者的角度上去設計 Statistics Software,免費提供並服務更多想學

    習統計的族群,這是我們不斷努力的目標。

    除了在統計視窗功能上的努力之外,我們也開始著重內部程式結構的建

    立,唯有將程式結構化,未來,想利用本軟體開發程式或增加功能的其它程式設

    計師,也容易增加/修改程式,使得本軟體不斷得到外界支援,能持續發展與服

    務統計族群。

    第二節 未來展望

    本軟體致力於統計功能上的開發,由一開始基礎統計的部份,至目前已陸續

    加入各應用層面之統計分析功能,未來將繼續增加其它各領域之統計計算功能,

    以供統計分析之需求;本軟體在計算結果上利用市面上知名統計軟體 S-PLUS、R

    驗證,因此,分析結果具有一定之可靠度,而有許多統計功能仍在測試階段,除

    介面上所看到的統計功能外,往後,統計計算功能會更加強大。

    另外,除在視窗使用需求不斷更新外,力求使用者友善,在 Statistics

    Software Beta 3.0 中加入了 Java Command 視窗,提供使用者輸入 Java 指令執

    行統計計算,目前為初始階段,未來將會在此部分持續努力,加強程式編譯的功

    能;另外在視窗上將使用 Internal frame,即資料視窗、分析報表、圖表均顯示

  • 46

    於 Statistics Software 框架之下。

    資料庫的部份,提供使用者連接資料庫載入資料分析,Statistics Software

    目前提供連接 Access、MS SQL、MySQL、PostgreSQL 資料庫,由於,使用者想連

    接的資料庫並不侷限於 Statistics Software 所支援的 Access、MS SQL、MySQL、

    PostgreSQL 之內,因此,基於考量使用者使用需求,將陸續增加可支援之資料

    庫系統,在資料的讀取上更加完整。

  • 47

    附錄 A Documentation

    本統計軟體之相關統計方法 javastat 程式運用之說明可利用 Statistics

    Software BETA 3.0 內之 HELP 查詢。

    下圖為 LogLinearRegression 之方法與建構子。

    圖 49 Constructor and Method of LogLinearRegression

  • 48

    參考文獻

    1. J.A. Nelder and R.W.M Wedderburn,,"Generalized linear models" ,J.R. Statist. Soc.A 135,p370-84,1972. (第三章第三節)

    2. P. McCullagh and J.A. Nelder,"Generalized Linear Models", Chapman and Hall. (第三章第三節)

    3. John Fox.,"An R and S-Plus companion to applied regression",Thousand Oaks, Calif. :Sage Publications, 2002。(第三章第三節)

    4. Erich Gamma、 Richard Helm、 Ralph Johnson、 John Vlissides," Design Patterns--Elements of Reusable Object-Oriented Software “,Addison

    Wesley,1995。(第二章第二節)

    5. Charlie Calvert 、Margie Clavert 著 / 黃聖峰,柳聖綸譯,"深入淺出JBuilder 程式設計實作",博碩文化,西元 2003 年。(第四章)

    6. 蔡志青,"Java Web Start 於統計軟體上的應用",東海大學/臺中巿,西

    元 2004 年。 (第三章) (第四章)

    7. 張瑜容,"Java Web Start 統計軟體及 MYSQL 資料庫系統", 東海大學/

    臺中巿,西元 2004 年。 (第三章) (第四章)

    8. 洪國勝,呂高旭,陳惠雀 編著,〝Java 程式設計快樂上手〞,松崗電腦,西元 2004 年。(第四章)

    9. 李 維 著,〝 Borland 傳奇〞,初版,臺北市,碁峰資訊,西元 2003 年。

    10. 葉榮木 編著,"資料結構:使用 JBuilder",初版,臺北市,文魁資訊,西元 2003 年。(第四章)

    11. Borland 臺灣分公司,"JBuilder 實用技術手冊",第二版 ,臺北市,碁峰資訊,西元 2003 年。(第四章)

    12. 林柳義 著,"資料庫系統概論",初版,臺北市,金禾資訊,西元 2004 年。

    13. 陳怡和、林學文 譯,"Java 資料庫程式設計經典",初版,臺北市,碁峰資訊,西元 2004 年。

    14. 諶家蘭 著,"資料庫管理系統-理論與實務", 初版,臺北市,智勝文化,西元 2002 年。(第二章第五節)

    15. Sun,http://java.sun.com / 。(第二章第三節)

    16. Jama,http://math.nist.gov/javanumerics/jama/。(第二章第三節)

  • 49

    17. Jsci,http://jsci.sourceforge.net/ 。(第二章第三節)

    18. jFree,http://www.jfree.org/ 。(第二章第三節)

    19. Java Web Start Technology,

    http://mllee.ice.cycu.edu.tw/crisis/Works/java/jws.htm

    (第二章第一節)

    20. The Open Source Definition,

    http://www.opensource.org/docs/definition_plain.html 。

    21. 唐旻瑗," 資料處理模式的演進",

    http://w3.ocit.edu.tw/ben/foxpro6/article/chinese/ch01/page02.htm

    (第二章第五節)

    22. 許憲忠,"淺談「主從式架構」",

    http://www.ascc.net/nl/84/1109/03.html

    23. 張智星,JScript 程式設計與應用:伺服器端,

    http://neural.cs.nthu.edu.tw/jang/books/asp/index.asp .

    24. 姚長利,"在 J2EE Web 專案中應用 Patterns",

    http://www.dotspace.idv.tw/Patterns/ApplyingPatternsToYourJ2EEWeb

    Projects/ApplyingPatternsToYourJ2EEWebProjects.pdf 。(第二章第二

    節)

    25. 資料庫簡介及 SQL 語法介紹,http://www.tceb.edu.tw/~wkb/dbase/ 。

    (第二章第四節)

    26. 資庫網,http://www.pgsql.com.tw/index.php。