仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1498|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网页设计用 PHP 使 Web 数据剖析进入更高境地

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:28:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
讲了这么多,无非是想说:学习PHP不仅要掌握方法,更多的是付出汗水,我不希望看到中途放弃的人,相信自己,相信自己的选择,更要相信自己的能力,如果自己想放弃,暴力一点的话,就自己抽自己一个嘴巴。web|数据   计您的数据剖析,做比复杂原始计数更多的事


对 Web 数据停止无效和多条理的剖析是很多面向 Web 企业可以保存的关头要素,数据剖析查验的设计(和决议计划)凡是是体系办理员和外部使用法式设计人员的任务,而他们能够除可以把原始计数制成表格以外,对统计学没有更多的懂得。在本文中,Paul Meagher 向 Web 开辟人员教授了将推论统计学使用到 Web 数据流所需的妙技和概念。

静态网站不休生成大批的数据 ― 会见日记、平易近意检验和查询拜访了局、客户概要信息、定单及其它,Web 开辟人员的任务不但是创立生成这些数据的使用法式,并且还要开辟使这些数据流成心义的使用法式和办法。

凡是,关于由办理站点所发生的不休增加的数据剖析需求,Web 开辟人员的应对是不敷的。普通而言,除呈报各类描写性统计信息以外,Web 开辟人员并没有其它更好的办法来反应数据流特点。有很多推论统计步调(依据样本数据估量整体参数的办法)可以被充实使用,但今朝却没有使用它们。

例如,Web 会见统计信息(按以后所编纂的)只不外是以各类体例停止分组的频率计数。以原始计数和百分比暗示平易近意检验和查询拜访了局的情形屈指可数。

开辟人员用对照浅易的办法处置数据流的统计剖析也许已足够了,咱们不该希冀太多。究竟,有从事较庞杂的数据流剖析的专业人士;他们是统计师和受过练习的剖析师。当组织需求的不单单是描写性统计时,可以请他们到场。

但另外一种应对是供认对推论统计学日趋加深的懂得正成为 Web 开辟人员任务描写的一局部。静态站点正在生成愈来愈多的数据,现实标明,想法将这些数据酿成有效的常识恰是 Web 开辟人员和体系办理员的义务。

我倡始接纳后一种应对;本文旨在匡助 Web 开辟人员和体系办理员进修(或重温,假如常识已遗忘的话)将推论统计学使用到 Web 数据流所需的设计和剖析妙技。


使 Web 数据与实行设计相干

将推论统计学使用到 Web 数据流需求的不单单是进修作为各类统计查验基本的数学常识。将数据搜集进程与实行设计中的关头不同联系关系起来的才能一样很主要:丈量标准是甚么?样本的代表性若何?整体是甚么?正在查验的假定是甚么?

要将推论统计学使用到 Web 数据流,需求先把了局看做是由实行设计生成的;然后选择合用于该实行设计的剖析进程。即便您能够以为将 Web 平易近意检验和会见日记数据看做实行的了局是画蛇添足,但如许做的确很主要。为何?

1.这将匡助您选择恰当的统计查验办法。
2.这将匡助您从搜集的数据中得出恰当的结论。

在肯定要利用哪些恰当的统计查验时,实行设计的一个主要方面是选择数据搜集的权衡标准。


权衡尺度的示例

丈量标准只是指定了一个对所感乐趣的景象分派符号、字母或数字的步调。例如,公斤标准答应您给一个物体分派数字,依据丈量仪器的尺度化的偏移量唆使该物体的分量。

有四种主要的权衡尺度:

定比标准(ratio)― 公斤标准是定比标准的一个示例 ? 分派给物体属性的符号具无数字意义。您可以对这些符号履行各类运算(如盘算比率),而关于经由过程利用功效不那末壮大的权衡尺度取得的数值,您不克不及利用这些运算。


定距标准(interval)― 在定距标准中,恣意两个相邻丈量单元之间的间隔(也称为间距)是相等的,但零点是恣意的。定距标准的示例包含对经度和潮汐高度的器度,和分歧年份始末的器度。定距标准的值可以加减,但乘除则没成心义。


定序标准(rank)― 定序标准可使用于一组有按次的数据,有按次指的是属于该标准的值和察看值可以按按次分列或附带有评级标准。罕见的示例包含“好恶”平易近意检验,个中将数字分派给各个属性(从 1 = 十分讨厌到 5 = 十分喜好)。凡是,一组有序数据的种别有天然的按次,但标准上相邻点之间的差距不用老是不异的。关于有按次的数据,您可以计数和排序,但不克不及丈量。


定类标准(nominal)― 权衡尺度的定类标准是权衡尺度中最弱的一种模式,次要指将项目分派给组或种别。这类丈量不带数目信息,而且不暗示对项目停止排序。对定类标准数据履行的次要数值运算是每种别中项目标频率计数。
下表对照了每种权衡尺度的特点:

权衡尺度标准 属性具有相对的数字寄义吗? 能履行大多半数学运算吗?
定比标准 是。 是。
定距标准 关于定距标准是如许;零点是恣意的。 加和减。
定序标准 不是。 计数和排序。
定类标准 不是。 只能计数。

在本文中,我将次要会商经由过程利用丈量的定类标准搜集的数据,和合用于定类数据的推论手艺。


利用定类标准

几近一切 Web 用户 ― 设计人员、客户和体系办理员 ― 都熟习定类标准。Web 平易近意检验和会见日记相似,由于它们经常利用定类标准作为权衡尺度。在 Web 平易近意检验中,用户经常经由过程恳求人们选择回覆选项(如“您偏心品牌 A、品牌 B,仍是品牌 C?”)来权衡人们的偏好。经由过程对各类回覆的频率停止计数来汇总数据。

相似的,丈量网站流量的经常使用办法是对一个礼拜内一天当中的每次点击或会见都划分给这一天,然后对每天呈现的点击或会见的数量计数。别的,您可以(也的确可以)经由过程阅读器类型、操作体系类型和会见者地点的国度或区域 ― 和任何您想失掉的分类标准 ― 对点击计数。

由于 Web 平易近意检验和会见统计信息都需求对数据归入某一特定性质种别的次数停止计数,所以可以用类似的无参数统计查验(答应您依据散布外形而不是整体参数作出推论的查验)来剖析它们。

David Sheskin 在他的 Handbook of Parametric and Non-Parametric Statistical Procedures 一书(第 19 页, 1997)中,是如许辨别参数查验和非参数查验的:


本书中将进程分类为参数查验和非参数查验所利用的区分次要基于被剖析数据所代表的丈量级别。作为通用划定规矩,评价种别/定类标准数据温柔序/品级-按次数据的推论统计查验被归类为非参数查验,而那些评价定距标准数据或定比标准数据的查验则被归类为参数查验。


看成为参数查验基本的某些假定值得嫌疑时,非参数查验也很有效;当不知足参数假定时,非参数查验在检测整体差别时有很大的感化。关于 Web 平易近意检验的示例,我利用了非参数剖析进程,由于 Web 平易近意检验凡是利用定类标准来纪录投票者的偏好。

我并非在建议 Web 平易近意检验和 Web 会见统计信息应当一直利用定类标准权衡尺度,或说非参数统计查验是独一可用于剖析这类数据的办法。不难假想有(比如)如许的平易近意检验和查询拜访,它们请求用户对每一个选项供应数值评分(从 1 到 100),对此,参数性的统计查验就对照适合。

虽然如斯,很多 Web 数据流包含编纂种别计数数据,并且经由过程界说定距标准(比如从 17 到 21)并将每一个数据点分派给一个定距标准(如“年老人”),可以将这些数据(经由过程利用功效更壮大的权衡尺度丈量)酿成定类标准数据。频率数据的广泛存在(已是 Web 开辟人员经历的一局部),使得专注于非参数统计学成为进修若何将推论手艺使用到数据流的优秀出发点。

为了使本文坚持公道的篇幅,我将把对 Web 数据流剖析的会商局限于 Web 平易近意检验。然而请记住,很多 Web 数据流都可以用定类计数数据暗示,而我会商的推论手艺将使您能做比呈报复杂的计数数据更多的工作。


从抽样入手下手

假定您在您的站点 www.NovaScotiaBeerDrinkers.com 长进行每周一次的平易近意检验,扣问成员对各类主题的定见。您已创立了一个平易近意检验,扣问成员喜欢的啤酒品牌(在加拿大新斯科舍省(Nova Scotia)有三种著名的啤酒品牌:Keiths、Olands 和 Schooner)。为了使查询拜访尽量局限普遍,您在回覆中包含“其它”。

您收到 1,000 条回覆,请察看到表 1 中的了局。(本文显示的了局只作为演示之用,其实不基于任何实践查询拜访。)

表 1. 啤酒平易近意检验Keiths Olands Schooner 其它
285(28.50%) 250(25.00%) 215(21.50%) 250(25.00%)

这些数据看上去撑持如许的结论:Keiths 是最受新斯科舍省居平易近接待的品牌。依据这些数字,您能得出这一结论吗?换句话说,您能依据从样本取得的了局对新斯科舍省的啤酒花费者整体作出推论吗?

很多与样本搜集体例有关的要素会使绝对受接待水平的推论不准确。能够样本中包括了过量 Keiths 酿酒厂的雇员;能够您没有完整预防一团体投屡次票的情形,而这团体能够使了局呈现偏向;也许被遴选出来投票的人与没有被遴选出来投票的人分歧;也许上彀的投票人与不上彀的投票人分歧。

大多半 Web 平易近意检验都存在这些注释上的坚苦。当您试图从样本统计数据得出有关整体参数的结论时,就会呈现这些注释上的坚苦。从实行设计概念看,在搜集数据之前起首要问的一个成绩是:可否接纳步调匡助确保样天性够代表所研讨的整体。

假如对所研讨的整体得出结论是您做 Web 平易近意检验的念头(而不是为站点会见者供应的消遣),那末您应当完成一些手艺,以确保一人一票(所以,他们必需用独一的标识登录才干投票),并确保随机选择投票者样本(例如,随机选择成员的子集,然后给他们发电子邮件,勉励他们投票)。

终究,方针是消弭(最少削减)各类偏向,它们能够会减弱对所研讨整体得出结论的才能。


查验假定

假定新斯科舍省啤酒花费者统计样本没有产生偏向,您如今可以得出 Keiths 是最受接待品牌这一结论吗?

要回覆这个成绩,请思索一个相干的成绩:假如您要取得另外一个新斯科舍省啤酒花费者的样本,您但愿看到完整不异的了局吗?实践上,您会但愿分歧样本中所察看到的了局有必定的变更。

思索这个预期的抽样可变性,您能够嫌疑经由过程随机抽样可变性是不是比反应所研讨整体中的实践差别能更好地申明察看到的品牌偏好。在统计学术语中,这个抽样可变性申明被称为子虚设(null hypothesis)。(子虚设由符号 Ho 暗示)在本例中,用公式将它暗示成如许的语句:在作出回覆的一切种别中,各类回覆的希冀数量不异。

Ho:# Keiths = # Olands = # Schooner = # Other

假如您可以扫除子虚设,那末您在回覆 Keiths 是不是是最受接待品牌这个最后的成绩上获得了一些停顿。那末,另外一个可承受的假定是在所研讨的整体中,各类回覆所占比例分歧。

这个“先查验子虚设”逻辑在平易近意检验数据剖析中的多个阶段都合用。扫除这一子虚设,如许数据就不会完整分歧,随后您可以持续查验一个更详细的子虚设,即 Keiths 和 Schooner,或 Keiths 与其它一切品牌之间没有不同。

您持续查验子虚设而不是直接评价另外一假定,是由于关于在子虚设前提下人们但愿察看到的事物停止统计建模更轻易。接上去,我将演示若何对在子虚设下所希冀的事物建模,如许我就能够将察看了局与在子虚设前提下所希冀的了局加以对照。


对子虚设建模:X 平方散布统计

到今朝为止,您已利用一个呈报每种回覆选项频率计数(和百分比)的表汇总了 Web 平易近意检验的了局。要查验子虚设(表单位频率之间不存在不同),盘算每一个表单位与您在子虚设前提下所希冀值的整体偏向器度要轻易很多。

在这个啤酒接待度平易近意检验的示例中,在子虚设前提下的希冀频率以下:

希冀频率 = 察看数量 / 回覆选项的数量
希冀频率 = 1000 / 4
希冀频率 = 250


要盘算每一个单位中回覆的内容与希冀频率相差几何的整体器度,您可以将一切的不同总计到一个反应察看频率与希冀频率相差几何的整体器度中:(285 - 250) + (250 - 250) + (215 - 250) + (250 - 250)。

假如您这么做,您会发明希冀频率是 0,由于均匀值的偏向的和永久是 0。要处理这个成绩,应该取一切差值的平方(这就是X 平方散布(Chi Square)中平方的由来)。最初,为了使各样本(这些样本具有分歧的察看数)的这个值具有可比性(换句话说,使它尺度化),将该值除以希冀频率。因而,X 平方散布统计的公式以下所示(“O”暗示“察看频率”,“E”等于“希冀频率”):

图 1. X 平方散布统计的公式




假如盘算啤酒接待度平易近意检验数据的 X 平方散布统计,会失掉值 9.80。要查验子虚设,需求晓得在假定存在随机抽样可变性的情形下取得这么一个极限值的几率。要得出这一几率,需求了解 X 平方散布的抽样散布是甚么样的。


察看 X 平方散布的抽样散布

图 2. X 平方散布图



在每幅图中,横轴暗示所失掉的 X 平方散布值巨细(图中所示局限从 0 到 10)。纵轴显示各 X 平方散布值的几率(或称为呈现的绝对频率)。

当您研讨这些 X 平方散布图时,请注重,当您在实行中改动自在度(即 df)时,几率函数的外形会改动。关于平易近意检验数据的示例,自在度是如许盘算的:记下平易近意检验中的回覆选项(k)的数量,然后用这个值减 1(df = k - 1)。

凡是,当您在实行中增添回覆选项的数量时,取得较大 X 平方散布值的几率会下落。这是由于当增添回覆选项时,就增添了方差值的数量 ― (察看值 - 希冀值)2 ― 您可以求它的总数。因而,当您增添回覆选项时,取得大的 X 平方散布值的统计几率应当增添,而取得较小 X 平方散布值的几率会削减。这就是为何 X 平方散布的抽样散布的外形跟着 df 值的分歧而变更的缘由。

另外,要注重到凡是人们对 X 平方散布了局的小数点局部不感乐趣,而是对位于所取得的值右侧曲线的总计局部感乐趣。该尾数几率告知您获得一个象您察看到的极限值是能够(如一个大的尾数区域)仍是不成能(小的尾数区域)。(实践上,我不利用这些图来盘算尾数几率,由于我可以完成数学函数来前往给定 X 平方散布值的尾数几率。我在本文前面会商的 X 平方散布法式中会采取这类做法。)

要进一步懂得这些图是若何派生出来的,可以看看若何摹拟与 df = 2(它暗示 k = 3)对应的图的内容。想象把数字 1、2 和 3 放进帽子里,摇一摇,选一个数字,然跋文录所选的数字作为一次测验考试。对这个实行停止 300 次测验考试,然后盘算 1、2 和 3 呈现的频率。

每次您做这个实行时,都应该希冀了局有略微分歧的频率散布,这一散布反应了抽样的可变性,同时,这个散布又不会真正偏离能够的几率局限。

上面的 Multinomial 类完成了这一设法。您可以用以下值初始化该类:要做实行的次数、每一个实行中所做测验考试的次数,和每次实验的选项数量。每一个实行的了局纪录在一个名为 Outcomes 的数组中。

清单 1. Multinomial 类的内容

<?php

// Multinomial.php

// Copyright 2003, Paul Meagher
// Distributed under LGPL

class Multinomial {

var $NExps;
var $NTrials;
var $NOptions;
var $Outcomes = array();

function Multinomial($NExps, $NTrials, $NOptions) {
$this->NExps = $NExps;
$this->NTrials = $NTrials;
$this->NOptions = $NOptions;
for ($i=0; $i < $this->NExps; $i++) {
$this->Outcomes[$i] = $this->runExperiment();
}
}

function runExperiment() {
$Outcome = array();
for ($i = 0; $i < $this->NExps; $i++){
$choice = rand(1,$this->NOptions);
$Outcome[$choice]++;
}
return $Outcome;
}

}
?>



请注重,runExperiment 办法是该剧本中十分主要的一局部,它包管在每次实行中所做出的选择是随机的,而且跟踪到今朝为止在摹拟实行中做出了哪些选择。

为了找到 X 平方散布统计的抽样散布,只需获得每次实行的了局,而且盘算该了局的 X 平方散布统计。因为随机抽样的可变性,因而这个 X 平方散布统计会随实行的分歧而分歧。

上面的剧本将每次实行取得的 X 平方散布统计写到一个输入文件以便稍后用图表暗示。

清单 2. 将取得的 X 平方散布统计写到输入文件
<?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);

?>



为了使运转该实行所希冀取得的了局可视化,对我来讲,最复杂的办法就是将 data.txt 文件装入开放源码统计包 R,运转 histogram 号令,而且在图形编纂器中编纂该图表,以下所示:

x = scan("data.txt")
hist(x, 50)


正如您可以看到的,这些 X 平方散布值的直方图与下面暗示的 df = 2 的一连 X 平方散布的散布近似。

图 3. 与 df=2 的一连散布近似的值



鄙人面几节中,我将偏重于申明这个摹拟实行中所利用的 X 平方散布软件的任务道理。凡是情形下,X 平方散布软件将用于剖析实践的定类标准数据(例如 Web 平易近意检验了局、每周的流量呈报或客户品牌偏好呈报),而不是您利用的摹拟数据。您能够还会对该软件生成的其它输入 ― 例如汇总表和尾数几率 ― 感乐趣。


X 平方散布的实例变量

我开辟的基于 php 的 X 平方散布软件包由用于剖析频率数据的类组成,频率数据是依照一维或两维(ChiSquare1D.php 和 ChiSquare2D.php)停止分类的。我的会商将仅局限于申明 ChiSquare1D.php 类的任务道理,和申明若何将其使用于一维 Web 平易近意检验数据。

在持续之前,应该申明:依照两维对数据停止分类(例如,依照性别对啤酒偏好停止分类),答应您经由过程查找列联表单位中的体系关系或前提几率入手下手申明您的了局。虽然上面的很多会商将有助于您了解 ChiSquare2D.php 软件的任务道理,但本文未会商的其它实行、剖析和可视化成绩也是利用这个类之前必需处置的。

清单 3 研讨了 ChiSquare1D.php 类的片断,它由以下局部组成:

1.一个被包括的文件
2.类实例变量

清单 3. 带有被包括的文件和实例变量的 X 平方散布类的片断

<?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 中这个剧本的顶部包括了一个名为 Distribution.php 的文件。所包括的途径兼并了在 init.php 文件中设置的 PHP_MATH 常量,假定 init.php 文件已包括在挪用剧本中。

所包括的文件 Distribution.php 包括了为几个经常使用的抽样散布(T 散布、F 散布和 X 平方散布)生成抽样散布统计信息的办法。ChiSquare1D.php 类必需可以会见 Distribution.php 中的 X 平方散布办法,以盘算所失掉的 X 平方散布值的尾数几率。

这个类中的实例变量列表值得注重,由于它们界说了由剖析进程生成的了局对象。这个了局对象包括了有关查验的一切主要具体信息,包含三个主要的 X 平方散布统计 ― ChiSqObt、ChiSqProb 和 ChiSqCrit。关于若何盘算每一个实例变量的具体信息,可以查阅该类的机关函数办法,一切这些值都源自那边。


机关函数:X 平方散布查验的骨干

清单 4 给出了 X 平方散布的机关函数代码,它组成了 X 平方散布查验的骨干。

清单 4. X 平方散布的机关函数

<?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;
}

}

?>


机关函数办法中值得注重的四个方面是:

1.机关函数承受一个由察看到的频率构成的数组、alpha 几率断开点(cutoff score)和一个可选的希冀几率的数组。
2.前六行触及了绝对复杂的赋值和被纪录的盘算值,以便于完全的了局对象可用于挪用剧本。
3.最初四行履行大批的获得 X 平方散布统计的任务,这些统计是您最感乐趣的。
4.该类只完成 X 平方散布查验逻辑。没有与该类相干联的输入办法。
您可以研讨本文的代码下载中包括的类办法,以懂得关于若何盘算每一个了局对象值的更多信息(请参阅参考材料)。


处置输入成绩
清单 5 中的代码展现了利用 ChiSquare1D.php 类履行 X 平方散布剖析是何等轻易。它还演示了输入成绩的处置。

该剧本挪用一个名为 ChiSquare1D_HTML.php 的包装器剧本。这个包装器剧本的目标是使 X 平方散布进程的逻辑与它的暗示方面相分别。_HTML 后缀标明输入针对的是尺度的 Web 阅读器或其它显示 HTML 的装备。

包装器剧本的另外一个目标是用便于了解数据的体例组织输入。为了到达这个目标,该类包括了两个用于显示 X 平方散布剖析了局的办法。showTableSummary 办法显示了在代码前面展现的第一个输入表(表 2),而 showChiSquareStats 显示了第二个输入表(表 3)。

清单 5. 使用包装器剧本组织数据
<?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. 运转包装器剧本而取得的希冀频率和方差
Keiths Olands Schooner 其它 算计
察看值 285 250 215 250 1000
希冀值 250 250 250 250 1000
方差 4.90 0.00 4.90 0.00 9.80

表 3. 运转包装器剧本取得的各类 X 平方散布统计信息统计
DF 取得值 几率 临界值
X 平方散布 3 9.80 0.02 7.81

表 2 显示了希冀频率和每一个单位的方差器度 (O - E)2 / E。方差值的和等于取得的 X 平方散布(9.80)值,这个值显示在汇总表的右下单位中。

表 3 呈报了各类 X 平方散布统计信息。它包含了剖析中利用的自在度,并再次呈报了取得的 X 平方散布值。取得的 X 平方散布值被从头暗示成尾数几率值 ― 在本例中是 0.02。这意味着,在子虚设前提下,察看到 X 平方散布极限值 9.80 的几率是 2%(这是一个相当低的几率)。

假如您决意扫除子虚设 ― 了局可以依照零散布的随机抽样可变性取得,那末大多半统计师都不会有争议。您的平易近意检验了局更有能够反应了新斯科舍省的啤酒花费者整体关于啤酒品牌偏好的真正不同。

为了确认这一结论,可以用取得的 X 平方散布值与临界值停止对照。

为何临界值很主要呢?临界值创立在为该剖析设置的某一主要级别(即 alpha 断开级别)之上。alpha 断开值依照常规被设置为 0.05(上述剖析利用的就是该值)。该设置用于查找 X 平方散布的抽样散布中包括尾数区域等于 alpha 断开值(0.05)的地位(或临界值)。

在本文中,取得的 X 平方散布值大于临界值。这意味着超越了坚持子虚设申明的阈值。另外一种假定 ― 对象整体中存在着比例差别 ― 在统计上能够更准确。

在数据流的主动化剖析中,alpha 断开设置可觉得常识-发明算法(例如 X 平方散布主动交互检测(Chi Square Automatic Interaction Detection,CHIAD))设置输入过滤,如许的算法本身在发明真正有效的形式方面没法为人们具体的指点。


从头停止平易近意检验
单向 X 平方散布查验的另外一个风趣使用是从头停止平易近意检验,以懂得人们的回覆是不是已产生变更。

假定过一段工夫后,您盘算对新斯科舍省的啤酒花费者停止另外一次 Web 平易近意检验。您再次扣问他们喜欢的啤酒品牌,如今察看到以下了局:

表 4. 新的啤酒平易近意检验
Keiths Olands Schooner 其它
385 (27.50%) 350 (25.00%) 315 (22.50%) 350 (25.00%)


旧的数据以下所示:

表 1. 旧的啤酒平易近意检验(再一次显示)
Keiths Olands Schooner 其它
285 (28.50%) 250 (25.00%) 215 (21.50%) 250 (25.00%)


平易近意检验了局之间的分明区分在于,第一次平易近意检验有 1,000 个查询拜访对象,而第二次有 1,400 个查询拜访对象。这些额定查询拜访对象的次要影响是,使得每一个回覆情况的频率计数增添了 100 点。

当筹办好对新的平易近意检验停止剖析时,可以使用缺省的办法 ― 盘算希冀频率来剖析数据,也能够使用每一个了局的希冀几率(基于前一次平易近意检验所察看到的比例)来初始化剖析。在第二种情况中,您将之前取得的比例装入希冀几率数组($ExpProb),并利用它们来盘算每一个回覆选项的希冀频率值。

清单 6 显示了用于检测偏好变更的啤酒平易近意检验剖析代码:


清单 6. 检测偏好的变更

<?php

// beer_repoll_analysis.php

require_once "../init.php";

require PHP_MATH . "chi/ChiSquare1D_HTML.php";

$Headings = array("Keiths", "Olands", "Schooner", "Other");

$ObsFreq = array(385, 350, 315, 350);
$Alpha = 0.05;
$ExpProb = array(.285, .250, .215, .250);

$Chi = new ChiSquare1D_HTML($ObsFreq, $Alpha, $ExpProb);

$Chi->showTableSummary($Headings);
echo "<br><br>";
$Chi->showChiSquareStats();

?>





表 5 和 6 显示了 beer_repoll_analysis.php 剧本生成的 HTML 输入:

表 5. 运转 beer_repoll_analysis.php 而取得的希冀频率和方差
Keiths Olands Schooner 其它 算计
察看值 385 350 315 350 1400
希冀值 399 350 301 350 1400
方差 0.49 0.00 0.65 0.00 1.14


表 6. 运转 beer_repoll_analysis.php 所取得的各类 X 平方散布统计信息统计
DF 取得值 几率 临界值
X 平方散布 3 1.14 0.77 7.81

表 6 标明,在子虚设前提下,取得 X 平方散布值 1.14 的几率是 77%。咱们不克不及扫除如许的子虚设,即自从上一次平易近意检验以来,新斯科舍省啤酒花费者偏好已产生了变更。察看频率和希冀频率之间的任何差别都可以注释为新斯科舍省不异啤酒花费者的希冀抽样可变性。思索到最后平易近意检验了局的转换只是经由过程向后面每一个平易近意检验了局添加常数 100 完成的,那末这类零发明也不该当有甚么使人受惊的中央了。

然而,您可以假想了局已产生了变更,而且假想这些了局能够暗示着另外一种品牌的啤酒正在变得加倍盛行(请注重表 5 中每列底部呈报的方差巨细)。您可以进一步假想这一发明对所会商的酿酒厂的财政方面有明显的寄义,由于酒吧老板常常会推销酒吧里最滞销的啤酒。

这些了局将遭到酿酒厂老板极为具体的反省,他们会对剖析进程和实行办法的合适性提出疑问;出格地,他们会对样本的代表性提出疑问。假如您盘算停止一次 Web 实行,该实行能够具有主要的实践寄义,那末,关于用来搜集数据的实行办法和用来从数据得出推论的剖析手艺,您需求赐与一律的存眷。

因而,本文不但为您奠基了一个优秀的基本,以便于可以增强您对 Web 数据的无效了解,它还供应了一些建议,这些建议是有关若何回护您的统计查验选择的,而且使得从数据取得的结论更具公道性。


使用学到的常识

在本文中,您已懂得了若何将推论统计学使用于广泛存在的用于汇总 Web 数据流的频率数据,偏重于 Web 平易近意检验数据的剖析。然而,所会商的复杂的单向 X 平方散布剖析进程也可以无效地使用于其它类型的数据流(会见日记、查询拜访了局、客户概要信息和客户定单),以便将原始数据转换成有效的常识。

在将推论统计学使用于 Web 数据时,我还引见了但愿将数据流视作 Web 实行的了局,以便于在作推论时进步援用实行设计思索事项的能够性。凡是因为您关于数据收集的进程缺少足够的掌握,因而您不克不及做出推论。然而,假如在将实行的设计准绳使用于 Web 数据搜集进程时您加倍自动(例如,在您的 Web 平易近意检验过程当中随机选择投票者),那末可以改动这类情况。

最初,我演示了若何摹拟分歧自在度的 X 平方散布的抽样散布,而不只是仅申明其来历。在如许做的过程当中,关于丈量种别的希冀频率小于 5(换而言之,即小 N 实行)― 我还演示了一种变通办法(利用小 $NTrials 值摹拟实行的抽样散布)来制止利用 X 平方散布查验。因而,我不只是利用研讨过程当中的 df 来盘算样本了局的几率,关于数目较小的测验考试,能够还需求利用 $NTrials 值作为参数来求得所察看 X 平方散布了局的几率。

思索您能够会若何剖析小 N 实行是值得的,由于您凡是能够但愿在数据收集完成之前剖析您的数据 ― 当每次察看的价值都很昂贵时,当察看需求消费很长工夫才干取得时,或只是由于您很猎奇。在测验考试这一级其余 Web 数据剖析时,最好谨记上面这两个成绩:


*您是不是有来由在小 N 前提下停止推论?
*摹拟有助于您决意在这些情况下取得甚么推论吗?

  PHP的理解是新手最难迈过的一道门槛,不过你应该感到幸运的是PHP已经最大极限的为了新手而努力了,如果你学过其他的语言,也许会觉得PHP的确相当的简单,但是如果你之前什么都没学过,那么阿弥陀佛,硬着头皮琢磨吧。
精灵巫婆 该用户已被删除
沙发
发表于 2015-2-4 13:10:33 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
因胸联盟 该用户已被删除
板凳
发表于 2015-2-4 16:28:55 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
金色的骷髅 该用户已被删除
地板
发表于 2015-2-5 11:06:16 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
若天明 该用户已被删除
5#
发表于 2015-2-11 09:32:58 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
小女巫 该用户已被删除
6#
发表于 2015-3-2 08:53:49 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
再现理想 该用户已被删除
7#
发表于 2015-3-8 17:40:50 | 只看该作者
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
8#
发表于 2015-3-15 23:44:23 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
海妖 该用户已被删除
9#
发表于 2015-3-21 13:24:38 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
分手快乐 该用户已被删除
10#
发表于 2015-3-21 21:43:10 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
莫相离 该用户已被删除
11#
发表于 2015-3-27 00:49:34 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
愤怒的大鸟 该用户已被删除
12#
发表于 2015-4-1 11:11:13 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
admin 该用户已被删除
13#
发表于 2015-4-6 02:08:40 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
小妖女 该用户已被删除
14#
 楼主| 发表于 2015-4-6 11:55:09 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
变相怪杰 该用户已被删除
15#
发表于 2015-4-7 12:03:52 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
若相依 该用户已被删除
16#
发表于 2015-4-12 10:49:22 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
小魔女 该用户已被删除
17#
发表于 2015-4-12 15:54:17 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
活着的死人 该用户已被删除
18#
发表于 2015-4-16 15:19:20 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
谁可相欹 该用户已被删除
19#
发表于 2015-5-1 12:10:22 | 只看该作者
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
深爱那片海 该用户已被删除
20#
发表于 2015-5-6 20:36:37 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 03:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表