
用 PHP 使 Web 數(shù)據(jù)分析進(jìn)入更高境界(三)
下面的腳本將每次實(shí)驗(yàn)獲得的 X 平方分布統(tǒng)計(jì)寫(xiě)到一個(gè)輸出文件以便稍后用圖表表示。 清單 2. 將獲得的 X 平方分布統(tǒng)計(jì)寫(xiě)到輸出文件 <?php // simulate.php // Copyright 2003, Paul Meagher // Distributed under LGPL // Set time limit to 0 so script doesn't time out set_time_limit(0); require_once "../init.php"; require PHP_MATH . "chi/Multinomial.php"; require PHP_MATH . "chi/ChiSquare1D.php"; // Initialization parameters $NExps = 10000; $NTrials = 300; $NOptions = 3; $multi = new Multinomial($NExps, $NTrials, $NOptions); $output = fopen("./data.txt","w") OR die("file won't open"); for ($i=0; $i<$NExps; $i++) { // For each multinomial experiment, do chi square analysis $chi = new ChiSquare1D($multi->Outcomes[$i]); // Load obtained chi square value into sampling distribution array $distribution[$i] = $chi->ChiSqObt; // Write obtained chi square value to file fputs($output, $distribution[$i]."\n"); } fclose ($output); ?> 為了使運(yùn)行該實(shí)驗(yàn)所期望獲得的結(jié)果可視化,對(duì)我來(lái)說(shuō),最簡(jiǎn)單的方法就是將 data.txt 文件裝入開(kāi)放源碼統(tǒng)計(jì)包 R,運(yùn)行 histogram 命令,并且在圖形編輯器中編輯該圖表,如下所示: x = scan("data.txt") hist(x, 50) 正如您可以看到的,這些 X 平方分布值的直方圖與上面表示的 df = 2 的連續(xù) X 平方分布的分布近似。 圖 3. 與 df=2 的連續(xù)分布近似的值 在下面幾節(jié)中,我將側(cè)重于說(shuō)明這個(gè)模擬實(shí)驗(yàn)中所使用的 X 平方分布軟件的工作原理。
通常情況下,X 平方分布軟件將用于分析實(shí)際的定類(lèi)尺度數(shù)據(jù)(例如 Web 民意測(cè)驗(yàn)結(jié)果、每周的流量報(bào)告或者客戶(hù)品牌偏好報(bào)告),而不是您使用的模擬數(shù)據(jù)。您可能還會(huì)對(duì)該軟件生成的其它輸出 ― 例如匯總表和尾數(shù)概率 ― 感興趣。 X 平方分布的實(shí)例變量 我開(kāi)發(fā)的基于 php 的 X 平方分布軟件包由用于分析頻率數(shù)據(jù)的類(lèi)構(gòu)成,頻率數(shù)據(jù)是按照一維或兩維(ChiSquare1D.php 和 ChiSquare2D.php)進(jìn)行分類(lèi)的。我的討論將僅局限于說(shuō)明 ChiSquare1D.php 類(lèi)的工作原理,以及說(shuō)明如何將其應(yīng)用于一維 Web 民意測(cè)驗(yàn)數(shù)據(jù)。 在繼續(xù)之前,應(yīng)當(dāng)說(shuō)明:按照兩維對(duì)數(shù)據(jù)進(jìn)行分類(lèi)(例如,按照性別對(duì)啤酒偏好進(jìn)行分類(lèi)),允許您通過(guò)查找列聯(lián)表單元中的系統(tǒng)關(guān)系或條件概率開(kāi)始說(shuō)明您的結(jié)果。盡管下面的許多討論將有助于您理解 ChiSquare2D.php 軟件的工作原理,但本文未討論的其它實(shí)驗(yàn)、分析和可視化問(wèn)題也是使用這個(gè)類(lèi)之前必須處理的。
清單 3 研究了 ChiSquare1D.php 類(lèi)的片段,它由以下部分構(gòu)成: 1.一個(gè)被包含的文件 2.類(lèi)實(shí)例變量 清單 3. 帶有被包含的文件和實(shí)例變量的 X 平方分布類(lèi)的片段 <?php // ChiSquare1D.php // Copyright 2003, Paul Meagher // Distributed under LGPL require_once PHP_MATH . "dist/Distribution.php"; class ChiSquare1D { var $Total; var $ObsFreq = array(); // Observed frequencies var $ExpFreq = array(); // Expected frequencies var $ExpProb = array(); // Expected probabilities var $NumCells; var $ChiSqObt; var $DF; var $Alpha; var $ChiSqProb; var $ChiSqCrit; } ?> 清單 3 中這個(gè)腳本的頂部包含了一個(gè)名為 Distribution.php 的文件。所包含的路徑合并了在 init.php 文件中設(shè)置的 PHP_MATH 常量,假定 init.php 文件已包含在調(diào)用腳本中。 所包含的文件 Distribution.php 包含了為幾個(gè)常用的抽樣分布(T 分布、F 分布和 X 平方分布)生成抽樣分布統(tǒng)計(jì)信息的方法。ChiSquare1D.php 類(lèi)必須能夠訪問(wèn) Distribution.php 中的 X 平方分布方法,以計(jì)算所得到的 X 平方分布值的尾數(shù)概率。 這個(gè)類(lèi)中的實(shí)例變量列表值得注意,因?yàn)樗鼈兌x了由分析過(guò)程生成的結(jié)果對(duì)象。
這個(gè)結(jié)果對(duì)象包含了有關(guān)檢驗(yàn)的所有重要詳細(xì)信息,包括三個(gè)重要的 X 平方分布統(tǒng)計(jì) ― ChiSqObt、ChiSqProb 和 ChiSqCrit。關(guān)于如何計(jì)算每個(gè)實(shí)例變量的詳細(xì)信息,可以查閱該類(lèi)的構(gòu)造函數(shù)方法,所有這些值都源自那里。 構(gòu)造函數(shù):X 平方分布檢驗(yàn)的主干 清單 4 給出了 X 平方分布的構(gòu)造函數(shù)代碼,它構(gòu)成了 X 平方分布檢驗(yàn)的主干。 清單 4. X 平方分布的構(gòu)造函數(shù) <?php class ChiSquare1D { function ChiSquare1D($ObsFreq, $Alpha=0.05, $ExpProb=FALSE) { $this->ObsFreq = $ObsFreq; $this->ExpProb = $ExpProb; $this->Alpha = $Alpha; $this->NumCells = count($this->ObsFreq); $this->DF = $this->NumCells - 1; $this->Total = $this->getTotal(); $this->ExpFreq = $this->getExpFreq(); $this->ChiSqObt = $this->getChiSqObt(); $this->ChiSqCrit = $this->getChiSqCrit(); $this->ChiSqProb = $this->getChiSqProb(); return true; } } ?> 構(gòu)造函數(shù)方法中值得注意的四個(gè)方面是:
1.構(gòu)造函數(shù)接受一個(gè)由觀察到的頻率組成的數(shù)組、alpha 概率斷開(kāi)點(diǎn)(cutoff score)和一個(gè)可選的期望概率的數(shù)組。
2.前六行涉及了相對(duì)簡(jiǎn)單的賦值和被記錄的計(jì)算值,以便于完整的結(jié)果對(duì)象可用于調(diào)用腳本。
3.最后四行執(zhí)行大量的獲取 X 平方分布統(tǒng)計(jì)的工作,這些統(tǒng)計(jì)是您最感興趣的。
4.該類(lèi)只實(shí)現(xiàn) X 平方分布檢驗(yàn)邏輯。沒(méi)有與該類(lèi)相關(guān)聯(lián)的輸出方法。 您可以研究本文的代碼下載中包含的類(lèi)方法,以了解關(guān)于如何計(jì)算每個(gè)結(jié)果對(duì)象值的更多信息(請(qǐng)參閱參考資料)。 處理輸出問(wèn)題 清單 5 中的代碼展示了使用 ChiSquare1D.php 類(lèi)執(zhí)行 X 平方分布分析是多么容易。
它還演示了輸出問(wèn)題的處理。 該腳本調(diào)用一個(gè)名為 ChiSquare1D_HTML.php 的包裝器腳本。這個(gè)包裝器腳本的目的是使 X 平方分布過(guò)程的邏輯與它的表示方面相分離。_HTML 后綴表明輸出針對(duì)的是標(biāo)準(zhǔn)的 Web 瀏覽器或其它顯示 HTML 的設(shè)備。 包裝器腳本的另一個(gè)目的是用便于理解數(shù)據(jù)的方式組織輸出。為了達(dá)到這個(gè)目的,該類(lèi)包含了兩個(gè)用于顯示 X 平方分布分析結(jié)果的方法。showTableSummary 方法顯示了在代碼后面展示的第一個(gè)輸出表(表 2),而 showChiSquareStats 顯示了第二個(gè)輸出表(表 3)。
清單 5. 利用包裝器腳本組織數(shù)據(jù) <?php // beer_poll_analysis.php require_once "../init.php"; require_once PHP_MATH . "chi/ChiSquare1D_HTML.php"; $Headings = array("Keiths", "Olands", "Schooner", "Other"); $ObsFreq = array(285, 250, 215, 250); $Alpha = 0.05; $Chi = new ChiSquare1D_HTML($ObsFreq, $Alpha); $Chi->showTableSummary($Headings); echo "<br><br>"; $Chi->showChiSquareStats(); ?> 該腳本生成了下列輸出: 表 2. 運(yùn)行包裝器腳本而獲得的期望頻率和方差 Keiths Olands Schooner 其它 合計(jì) 觀察值 285 250 215 250 1000 期望值 250 250 250 250 1000 方差 4.90 0.00 4.90 0.00 9.80 表 3. 運(yùn)行包裝器腳本獲得的各種 X 平方分布統(tǒng)計(jì)信息統(tǒng)計(jì) DF 獲得值 概率 臨界值 X 平方分布 3 9.80 0.02 7.81 表 2 顯示了期望頻率以及每個(gè)單元的方差度量 (O - E)2 / E。方差值的和等于獲得的 X 平方分布(9.80)值,這個(gè)值顯示在匯總表的右下單元中。
表 3 報(bào)告了各種 X 平方分布統(tǒng)計(jì)信息。它包括了分析中使用的自由度,并再次報(bào)告了獲得的 X 平方分布值。獲得的 X 平方分布值被重新表示成尾數(shù)概率值 ― 在本例中是 0.02。這意味著,在虛假設(shè)條件下,觀察到 X 平方分布極限值 9.80 的概率是 2%(這是一個(gè)相當(dāng)?shù)偷母怕剩?nbsp;
如果您決定排除虛假設(shè) ― 結(jié)果可以按照零分布的隨機(jī)抽樣可變性獲得,那么大多數(shù)統(tǒng)計(jì)師都不會(huì)有爭(zhēng)議。您的民意測(cè)驗(yàn)結(jié)果更有可能反映了新斯科舍省的啤酒消費(fèi)者總體對(duì)于啤酒品牌偏好的真正差別。 為了確認(rèn)這一結(jié)論,可以用獲得的 X 平方分布值與臨界值進(jìn)行比較。 為什么臨界值很重要呢?臨界值建立在為該分析設(shè)置的某一重要級(jí)別(即 alpha 斷開(kāi)級(jí)別)之上。alpha 斷開(kāi)值按照慣例被設(shè)置為 0.05(上述分析使用的就是該值)。該設(shè)置用于查找 X 平方分布的抽樣分布中包含尾數(shù)區(qū)域等于 alpha 斷開(kāi)值(0.05)的位置(或臨界值)。 在本文中,獲得的 X 平方分布值大于臨界值。這意味著超出了保持虛假設(shè)說(shuō)明的閾值。
另一種假設(shè) ― 對(duì)象總體中存在著比例差異 ― 在統(tǒng)計(jì)上可能更正確。 在數(shù)據(jù)流的自動(dòng)化分析中,alpha 斷開(kāi)設(shè)置可以為知識(shí)-發(fā)現(xiàn)算法(例如 X 平方分布自動(dòng)交互檢測(cè)(Chi Square Automatic Interaction Detection,CHIAD))設(shè)置輸出過(guò)濾,這樣的算法自身在發(fā)現(xiàn)真正有用的模式方面無(wú)法為人們?cè)敿?xì)的指導(dǎo)。 重新進(jìn)行民意測(cè)驗(yàn) 單向 X 平方分布檢驗(yàn)的另一個(gè)有趣應(yīng)用是重新進(jìn)行民意測(cè)驗(yàn),以了解人們的回答是否已發(fā)生變化。
數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼
若不方便掃碼,搜微信號(hào):CDAshujufenxi
LSTM 模型輸入長(zhǎng)度選擇技巧:提升序列建模效能的關(guān)鍵? 在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)家族中,長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)憑借其解決長(zhǎng)序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報(bào)考條件詳解與準(zhǔn)備指南? ? 在數(shù)據(jù)驅(qū)動(dòng)決策的時(shí)代浪潮下,CDA 數(shù)據(jù)分析師認(rèn)證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計(jì)的實(shí)用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強(qiáng)大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶(hù) ...
2025-07-11尊敬的考生: 您好! 我們誠(chéng)摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實(shí)施重大更新。 此次更新旨在確保認(rèn) ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務(wù)的價(jià)值轉(zhuǎn)化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡(jiǎn)稱(chēng) BI)深度融合的時(shí)代,BI ...
2025-07-10SQL 在預(yù)測(cè)分析中的應(yīng)用:從數(shù)據(jù)查詢(xún)到趨勢(shì)預(yù)判? ? 在數(shù)據(jù)驅(qū)動(dòng)決策的時(shí)代,預(yù)測(cè)分析作為挖掘數(shù)據(jù)潛在價(jià)值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢(xún)結(jié)束后:分析師的收尾工作與價(jià)值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢(xún)結(jié)束)并非工作的終點(diǎn),而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報(bào)考到取證的全攻略? 在數(shù)字經(jīng)濟(jì)蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭(zhēng)搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢(shì)性檢驗(yàn):捕捉數(shù)據(jù)背后的時(shí)間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢(shì)性檢驗(yàn)如同一位耐心的偵探,專(zhuān)注于從單 ...
2025-07-09year_month數(shù)據(jù)類(lèi)型:時(shí)間維度的精準(zhǔn)切片? ? 在數(shù)據(jù)的世界里,時(shí)間是最不可或缺的維度之一,而year_month數(shù)據(jù)類(lèi)型就像一把精準(zhǔn) ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應(yīng)用與實(shí)戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認(rèn)證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗(yàn):數(shù)據(jù)趨勢(shì)與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領(lǐng)域中,準(zhǔn)確捕捉數(shù)據(jù)的趨勢(shì)變化以及識(shí)別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認(rèn)證作為國(guó)內(nèi)權(quán)威的數(shù)據(jù)分析能力認(rèn)證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應(yīng)對(duì)策略? 長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變體,憑借獨(dú)特的門(mén)控機(jī)制,在 ...
2025-07-07統(tǒng)計(jì)學(xué)方法在市場(chǎng)調(diào)研數(shù)據(jù)中的深度應(yīng)用? 市場(chǎng)調(diào)研是企業(yè)洞察市場(chǎng)動(dòng)態(tài)、了解消費(fèi)者需求的重要途徑,而統(tǒng)計(jì)學(xué)方法則是市場(chǎng)調(diào)研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書(shū)考試全攻略? 在數(shù)字化浪潮席卷全球的當(dāng)下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅(qū)動(dòng)力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專(zhuān)業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉(zhuǎn)日期:解鎖數(shù)據(jù)處理的關(guān)鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準(zhǔn)確性的基礎(chǔ) ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅(qū)動(dòng)力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開(kāi)啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價(jià)值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03