作者: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. css 浅析display属性

    继续开始我的css之旅吧.今天我们来说什么啊.构思了两天还是没有什么思路,但是学习的步伐我们不能停止下来.还是按照之前的计划来讲讲display,在讲这个之前我们还是按照老规矩来扯扯蛋,步子不能够迈大 ...

  2. sublime 安装 插件

    从菜单 View - Show Console 或者 ctrl + ~ 快捷键,调出 console.将以下 Python 代码粘贴进去并 enter 执行,不出意外即完成安装.以下提供 ST3 和 ...

  3. 实现Android桌面的App快捷方式

    本文描述的是,在App开发过程中,该如何实现App在Anroid桌面上生成App的快捷方式.主要分为两个步骤: 一,在AndroidManifest.xml中声明相关权限: <uses-perm ...

  4. C#按照指定长度分割中英文字符串

    最近有一个需求:玩家发的不同长度文字,需要自适应行数. 初步实现想法很简单,直接获取字符数均分行数,再利用string.substring()切割即可.但是显而易见,由于一般字体下,中文显示宽度一般是 ...

  5. 在SQLSERVER里,怎么让别人只能输入一个字母的约束该怎么写?就是26个字母中的任意一个?

    alter table 表名 add constraint ck_char check(自段名 like '[a-z]' or 自段名 like '[A-Z]')

  6. Unity3D UGUI之ScrollView弹簧效果

    unity3d版本5.3.2p4 UGUI中ScrollView包含Viewport(Content) ScrollView包含脚本.其Movement Type一共3个选项.Elastic就是弹簧效 ...

  7. Hbuilder开发HTML5 APP之侧滑菜单

    1.思路: 其时有2个WebView,一个main是用来装主页面,一个menu是用来装菜单(为提高性能,菜单项是采用了预加载方式的,预加载时为了避免和主页面争夺资源,采用延时加载,例如: //plus ...

  8. 解读ASP.NET 5 & MVC6系列(2):初识项目

    初识项目 打开VS2015,创建Web项目,选择ASP.NET Web Application,在弹出的窗口里选择ASP.NET 5 Website模板创建项目,图示如下: 我们可以看到,此时Web ...

  9. .NET面试题系列[0] - 写在前面

    .NET面试题系列目录 .NET面试题系列[1] - .NET框架基础知识(1) .NET面试题系列[2] - .NET框架基础知识(2) .NET面试题系列[3] - C# 基础知识(1) .NET ...

  10. NodeJS入门(五)—— process对象

    process对象用于处理与当前进程相关的事情,它是一个全局对象,可以在任何地方直接访问到它而无需引入额外模块. 它是 EventEmitter 的一个实例. 本章的示例可以从我的Github上下载到 ...