作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明。谢谢!
 
结束了概率论,我们数据之旅的下一站是统计。这一篇,是统计的一个小介绍。
 
统计是研究数据的学科。它包括描述数据,推测群体信息,判断假设的真伪。统计是一门实用学科。人们利用统计,寻找下一个NBA巨星,推测奥斯卡奖项,寻找自己的真心伴侣。在电影“点球成金”中,球队的经理就是利用统计思想,来搜寻球员,管理球队,最终造就了一支劲旅。
点球成金 
 

统计这件大事

如果说最早有统计意识的人,那莫过于古往今来的“王霸”之人。精明的王者,早早的意识到数据的重要性,也因此从统计数据中获得信息优势。刘邦占领咸阳后,萧何先去收集的,是王宫里的户籍、地理、人口等手册。后来楚霸王来了,则是烧杀抢掠一番。项羽在“大数据”意识上,就输给了刘邦阵营。
 
因数据而流传千古的,还有征服者威廉。这位来自诺曼底的王者,以旺盛的精力统治着英格兰。他派遣手下,走遍英格兰的每个村庄,编纂成统计书 (Domesday Book),详细的记录了英格兰每个地区的人口、地理和物产,甚至于精确到每家养殖的牲口数目。无怪乎诺曼底王朝可以延续数百年。
Domesday Book
 
现代统计诞生于欧洲近代,主要服务于政府部门。统计部门的建立受益于启蒙主义思想。政府管理从中世纪的影响中走出,开始以理性和科学的方式,记录国家发展。农业社会向工业社会转型,政府需要更高效的方式,了解国家的方方面面。概率的思想融入统计学,统计从单纯的数字记录,向估计和推测发展。随着现代统计的发展,许多以前难以精确获得的数字,比如出生率,国民生产总值,战争耗费等,都通过采样估计的方式获得。
 

管中窥豹

道琼斯指数
北京的PM2.5指数
世界人口
这三者有什么共同之处呢?
 
首先,它们都一定程度代表了某个群体的状况,比如美国股市,北京的空气污染状况,和世界的人口。其次,它们都是通过对群体采样,来获得的结果。道琼斯指数包含了美国最重要的一些工业股,而不是所有的股票。PM2.5是北京的数个观测站采集到的。世界人口,是通过各地采样获得的。
 
PM2.5
 
 
通过样本(sample),来研究整个群体(population),是统计学的一大特征。这背后的哲学是,用部分来理解整体。利用统计工具,我们还可以推测,样本中信息与真正的整体信息,有多大的误差。这个研究门类,被称为统计推断 (statistical inference)。它实际上利用了概率论工具,根据采样,对群体的状况作出推论,并给出推论的不确定程度。
 

确定性的消失

我们希望结论靠谱,就不能忽视误差。在日常生活中,我们也会不经意的用统计的方式思考,但往往会忽视误差。从一袋大米中抓出一把,我们会推测整袋大米的质量。从认识的北京朋友,我们会推断北京人的性格特征。从身边的程序员同事,推测码农的收入和气质。这样很容易得到结论,但也很容易以偏概全,导致自己的结论大大偏离现实。严格的统计方法需要说明结果的可靠性。
 
从确定论到不确定论,是人类理性的一次大飞跃。在这一观点下,自然科学发生了质的变化。许多早期的科学结论,出现了问题。比较典型的就是:“如果在某一时刻知道所有原子的运动状况,就可以预测宇宙的未来”。观测的数据,如果没有相关的误差描述,不被认为是有效的。更有信奉统计理念的狂热者,比如拉普拉斯。他研究潮汐时,给出优美的理论。但他宣称自己的理论不可信:由于自己的数据只有数千个,达不到统计理论的健壮性。
 
 
从群体中抽取一个样品,那么这个样品究竟是群体的哪个个体,是一个随机变量。统计学的不确定性由来于此。这也是统计学与概率论研究的结合点。结合我们对该随机变量的特征有所了解,比如该随机变量符合高斯分布,那么可以根据抽出的样品,来计算分布的平均值和方差,从而得到群体的状况。我们还可以对群体作出一些假设的理论,根据采样结果,来判断结论真伪的概率。确定性的消失令人不安,却为统计学打开了一扇大门。
 

大数据时代

大数据时代的一个有趣想像,是人们可以对一些数量巨大的群体进行直接的运算。比如,我们可以迅速的计算出所有股票的市值,Facebook的用户发帖总数等等。曾经的一些采样统计,在计算机的巨力面前,似乎显得有些没有必要。是啊,如果可以直接得到群体的信息,我们何必拘泥于恼人的不确定性呢?

姑且不论计算速度和数据采集速度的限制,许多问题的本质,就阻止了我们美梦。比如简单的连续方程积分,就无法真正的摆脱不确定性。自然测量的本质的连续的,计算机运算是离散的。用离散的系统,只能尽力的趋近,却无法真正精确。再者,许多数据是无法测量的。比如假设检验、决策,乃至统计为基础的机器学习。它们基于一个无法测量的真相:所有可能性中“最好”的那一个。这一所谓的“最好”,可能只是理论存在。即使有再多的计算机,也无法采集这样的数据。大数据时代,统计非但没有过时,还找到了更大的舞台。

总结

在后面的统计文章中,目标还是统计理论与编程相结合。

准备开始统计之旅!

欢迎继续阅读“数据科学”系列文章

统计Go, Go, Go的更多相关文章

  1. spark处理大规模语料库统计词汇

    最近迷上了spark,写一个专门处理语料库生成词库的项目拿来练练手, github地址:https://github.com/LiuRoy/spark_splitter.代码实现参考wordmaker ...

  2. TFS 测试用例步骤数据统计

    TFS系统集成了一套BI系统,基于SQL Server的Analysis Service进行实现的.通过这几年的深入使用,能够感触到这个数据数据仓库模型是多么的优秀,和微软官方提供的数据仓库示例Adv ...

  3. java统计字符串单词的个数

    在一些项目中可能需要对一段字符串中的单词进行统计,我在这里写了一个简单的demo,有需要的同学可以拿去看一下. 本人没怎么写个播客,如果有啥说的不对的地方,你来打我啊 不说废话了直接贴代码: 实现代码 ...

  4. 统计iOS项目的总代码行数的方法

    打开终端, 用cd命令 定位到工程所在的目录,然后调用以下命名即可把每个源代码文件行数及总数统计出来: find . "(" -name "*.m" -or - ...

  5. 微信小程序二维码推广统计

    微信小程序可以通过生成带参数的二维码,那么这个参数是可以通过APP的页面进行监控的 这样就可以统计每个二维码的推广效果. 今天由好推二维码推出的小程序统计工具HotApp小程序统计也推出了带参数二维码 ...

  6. 微信小程序监控 - HotApp统计

    HotApp小程序统计,第一个专业的微信第三方小程序监控统计工具 1.什么是HotApp小程序统计 HotApp小程序统计是第一个微信第三方小程序统计工具,就像做android 和 ios开发的人知道 ...

  7. 有关“数据统计”的一些概念 -- PV UV VV IP跳出率等

    有关"数据统计"的一些概念 -- PV UV VV IP跳出率等 版权声明:本文为博主原创文章,未经博主允许不得转载. 此文是本人工作中碰到的,随时记下来的零散概念,特此整理一下. ...

  8. SQL统计

    --按周统计SELECT TOP 10DATENAME(year,AddDate) 年,DATENAME(week,AddDate) 周,COUNT(1) 单量,SUM(total) 总金额,AVG( ...

  9. ASP.NET MVC5+EF6+EasyUI 后台管理系统(39)-在线人数统计探讨

    系列目录 基于web的网站在线统计一直处于不是很精准的状态!基本上没有一种方法可以确实的统计在线用户! Discuz!NT 在线用户功能算是做得比较好的!参考资料 他的原理大致是根据用户的操作间隔来确 ...

  10. ASP.NET MVC5+EF6+EasyUI 后台管理系统(40)-精准在线人数统计实现-【过滤器+Cache】

    系列目录 上次的探讨没有任何结果,我浏览了大量的文章和个别系统的参考!决定用Cache来做,这可能有点难以接受但是配合mvc过滤器来做效果非常好! 由于之前的过滤器我们用过了OnActionExecu ...

随机推荐

  1. mac 终端常用命令

    1.复制文件内容到剪贴板:pbcopy < ~/.ssh/id_rsa.pub. 2.ssh key 的生成,参考mac ssh key 的获取. 3.sourcetree 需要输入的密码,指的 ...

  2. 我对 Java 标识符的分类命名方法

    我对 Java 的各种标识符有一套固定的分类方法,以下分享一下我的命名方法以及进行一些说明. # 前缀: 方法 方法:f_doSomeThing().分类词是 f,采自 [f]unction 方法,也 ...

  3. Project 'king.commons' is missing required library: 'lib/plweb.jar' Build path Build Path Problem

    问题描述:之前在项目里引用一个jar 包,后来不用了删掉 ,但是没有删干净,然后报以下错误. 解决方案: 1.删除libraries 2.找到该项目下的 .classpath 文件,用记事本打开 ,删 ...

  4. >hibernate-session中的方法

    1.操作实体对象的方法 save()  保存 update() 更新 saveOrUpdate() 保存或更新 delete() 删除 2.操作缓存的方法 clear()  清除所有缓存 evit() ...

  5. SQL Server CONVERT() 截取日期

    SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSELECT CONVERT(varchar(100), GETDATE() ...

  6. while(cin.eof)出错 poj

    zoj遇到c++如何判定输入流结尾的问题,一不小心就超时了 楼下的代码可以通过zoj #include<iostream> using namespace std; int main(){ ...

  7. JavaScript 事件 编程练习

    编程练习 使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除. 提示:获取元素的值设置和获取方法为:例:赋值:document.getElement ...

  8. Expert 诊断优化系列------------------给TempDB 降温

    前面文章针对CPU.内存.磁盘.语句.等待讲述了SQL SERVER的一些基本的问题诊断与调优方式.为了方便阅读给出导读文章链接方便阅读: SQL SERVER全面优化-------Expert fo ...

  9. UWP图片编辑器(涂鸦、裁剪、合成)

    一.编辑器简介 写这个控件之前总想找一找开源的,可以偷下懒省点事.可是各种地方都搜遍了也没有找到. 于是,那就做第一个吃螃蟹的人吧! 控件主要有三个功能:涂鸦.裁剪.合成. 涂鸦:主要是用到了InkT ...

  10. Prim 最小生成树算法

    Prim 算法是一种解决最小生成树问题(Minimum Spanning Tree)的算法.和 Kruskal 算法类似,Prim 算法的设计也是基于贪心算法(Greedy algorithm). P ...