作者介绍:10年大厂数据\经营分析经验,现任大厂数据部门负责人。
会一些的技术:数据分析、算法、SQL、大数据相关、python
欢迎加入社区:码上找工作
作者专栏每日更新:
备注说明:方便大家阅读,统一使用python,带必要注释,公众号 数据分析螺丝钉 一起打怪升级
今天我们来介绍一下数据分析是如何演进而来的,在历史的进程中是如何演变成现代大数据智能时代的。为致敬数据分析的历史伟人,这张图也是通过数据分析代码生成,有兴趣的可以 关注公众号 数据分析螺丝钉 获取
全文 6600字,阅读时间 5分钟
数据分析演进的关键节点与人物
背景
在这个以数据驱动的时代,数据分析已成为从商业决策到科学研究不可或缺的工具。这一领域的发展历程见证了无数革命性人物的贡献,他们的工作不仅推动了技术进步,也在很大程度上重塑了我们理解世界的方式。本文将探索几位在数据分析领域中具有里程碑意义的先驱者,他们的故事如何激励着今天的数据科学家
John Graunt: 统计学之父与数据分析的曙光
早年生活与职业
John Graunt,于1620年4月24日出生在伦敦,是一位英国商人和统计学家。尽管他没有接受正规的高等教育,但Graunt通过自学和实践,展现出了对数据和统计的深刻理解。在大部分的职业生涯中,Graunt经营着一家成功的织物生意,但他对数字和统计的热情引导他走上了开创性的数据分析之路。
数据分析的开端
在17世纪的英国,随着城市化进程的加快,人口健康和流行病成为社会关注的重点。Graunt利用伦敦市政府发布的死亡记录,开始了他的数据分析之旅。1662年,他发表了《自然与政治观察摘要》(Natural and Political Observations Made upon the Bills of Mortality),这是一项开创性的工作,被认为是统计学和人口统计学的奠基之作。
《自然与政治观察摘要》
在这本书中,Graunt不仅仅统计了死亡人数,更重要的是,他首次尝试通过数据分析揭示疾病爆发的模式和趋势。他对数据进行分类,区分了不同原因导致的死亡,并估算了伦敦的人口规模,为了收集数据Graunt共收集、整理了1604年以来3 000多册死亡周报表所包含的人口资料以及1592年以来教会举行的婚礼、洗礼和丧葬等场次记录。Graunt的工作展示了数据可以如何被用来解释自然现象和社会问题,这对于当时的科学和医学研究具有革命性意义。
对后世的影响
John Graunt的工作被后来的统计学家和科学家广泛引用,他的方法论启发了包括托马斯·马尔萨斯在内的许多人。Graunt展示了统计和数据分析在解决公共卫生问题中的潜力,为现代流行病学和统计学的发展奠定了基础。
案例 1603 年 4 ― 9 月鼠疫流行期间死亡总人数为 37294 人其中鼠 疫导致的死亡人数为 30561 人比例约为 82%, 1625 年 4 ― 9 月死亡总人数为 51758 人,其中鼠 疫所致死亡人数为 35417 人,比例却降低至 68%, 此外依据 1603 年和 1625 年的死亡人数格朗特推 测这两年死亡率应该大致相当且都达到最大值,于 是他开始思考究竟是鼠疫死亡率确实降低还是数 据存在异常值? 并首次提出"数据可靠性"的概念,并认为1625年的数据不准确,由于不是每个鼠疫死亡都经过尸检,所以预估1625年鼠疫死亡被记录到其他死亡因素的数据大概占比超过20%。
John Graunt的故事提醒我们,对数据的好奇心和探索精神可以引领我们解锁知识的无限可能。在数据分析领域,Graunt的贡献永远是一座重要的里程碑,他的方法和思想至今也在影响着我们。多问几个为什么,从趋势中发现问题,找出不合理的点,然后坚定地提出质疑,这大概就是现在数据分析中必备的基础素质
Carl Friedrich Gauss:数学王子
是19世纪最著名的数学家之一。他在数学、物理学和天文学等多个领域做出了重大贡献。Gauss最著名的贡献可能难以归结为单一成就,因为他的工作范围极广,但以下几点被广泛认为是他的标志性贡献:
- 最小二乘法(Least Squares Method):最小二乘法是统计学中用于最优化问题的一种方法。Gauss在天文数据分析中的应用推广了这一方法,使其成为解决过定系统(即未知数少于方程数的系统)的标准技术。后续在线性回归分析、时间序列分析、信号处理、图像分析广泛应用。
- 我们用python代码进行数据模拟,假设我们有一组观测数据点,我们想要找到一条线,这条线能够以最小二乘误差拟合这些数据点。
import numpy as np import matplotlib.pyplot as plt from scipy.optimize import curve_fit # 生成一些模拟数据 np.random.seed(0) x = np.arange(1, 10) y = 2.5 * x + np.random.normal(size=x.size) # 定义线性模型函数 def model(x, a, b): return a * x + b # 使用最小二乘法拟合模型参数 params, covariance = curve_fit(model, x, y) # 绘制数据点 plt.scatter(x, y, label='Data Points') # 绘制最佳拟合线 plt.plot(x, model(x, *params), color='red', label='Fitted line') # 添加图例和标签 plt.legend() plt.xlabel('x') plt.ylabel('y') plt.title('Linear Fit using Least Squares Method') # 显示图形 plt.show()
- 高斯分布(Gaussian Distribution):也称正态分布,是统计学中最重要的概率分布之一。高斯分布描述了在自然和社会科学现象中普遍存在的随机变量的分布形态,Gauss的工作奠定了这一分布的数学基础。高斯分布公式如下
添加图片注释,不超过 140 字(可选)
用python进行数据模拟,设置均值为0,标准差为1
添加图片注释,不超过 140 字(可选)
python代码
import numpy as np import matplotlib.pyplot as plt # 设置随机数种子,以确保结果的可重复性 np.random.seed(0) # 生成高斯分布数据 mu = 0 # 均值 sigma = 1 # 标准差 samples = np.random.normal(mu, sigma, 1000) # 生成1000个样本 # 绘制直方图来观察数据分布,bins指定直方图的柱数 plt.hist(samples, bins=30, density=True, alpha=0.6, color='g') # 绘制高斯分布曲线 xmin, xmax = plt.xlim() x = np.linspace(xmin, xmax, 100) p = 1/(sigma * np.sqrt(2 * np.pi)) * np.exp(-(x - mu)**2 / (2 * sigma**2)) plt.plot(x, p, 'k', linewidth=2) title = "Fit results: mu = %.2f, sigma = %.2f" % (mu, sigma) plt.title(title) plt.show()
- 数论贡献:Gauss在数论领域的工作开创性,特别是他的著作《算术研究》(Disquisitiones Arithmeticae)被认为是数论历史上的里程碑。他在此书中提出了许多重要概念,如模运算、二次互反律等。
- 磁性研究:Gauss还对地磁学做出了贡献。他和威廉·韦伯(Wilhelm Weber)合作,发展了测量地球磁场的方法,并建立了磁力的绝对测量单位。
- 非欧几里得几何:尽管Gauss没有在其一生中公开发表有关非欧几里得几何的理论,但据信他早在1829年就已经独立发现了这一领域的一些基本概念。他的这些私下工作为后来的数学家开辟了新的研究方向。
Ronald A. Fisher:现代统计学的先驱
Ronald Aylmer Fisher(1890-1962)是20世纪最重要的统计学家之一,也是现代统计学的奠基人之一。他的工作不仅对统计学产生了深远影响,还在生物学领域,尤其是在遗传学方面,作出了重要贡献。Fisher引入了方差分析(ANOVA)、最大似然估计(MLE)等概念,并发展了实验设计的理论和方法。他还是群体遗传学的先驱之一,通过统计方法链接了达尔文的自然选择和孟德尔的遗传规律。
方差分析(ANOVA)
方差分析是Fisher引入的一种统计方法,用于分析数据集中不同组之间的差异是否显著。方差分析的基本思想是比较组内变异和组间变异,从而判断各组平均值之间的差异是否具有统计学意义。
基本的单因素方差分析(One-way ANOVA)的假设检验公式为:
最大似然估计(MLE)
假设我们要分析三组学生的考试成绩是否存在显著差异。
import numpy as np import scipy.stats as stats # 模拟三组学生的考试成绩 group1 = np.random.normal(70, 10, 30) group2 = np.random.normal(75, 10, 30) group3 = np.random.normal(80, 10, 30) # 执行单因素方差分析 F, p = stats.f_oneway(group1, group2, group3) print(f"F统计量: {F}, p值: {p}") # 判断显著性 if p < 0.05: print("存在至少两组之间的显著差异。") else: print("各组之间没有显著差异。")
Alan Turing:计算机科学的先锋
Alan Mathison Turing(1912-1954),英国数学家、逻辑学家,被广泛认为是计算机科学和人工智能之父。他的工作跨越数学、密码学、逻辑学、计算机科学等多个领域,为现代计算机的发展奠定了理论基础。Turing最著名的贡献包括提出图灵机模型、在第二次世界大战期间破解德国的恩尼格玛密码、以及提出人工智能的图灵测试。
图灵机模型
图灵机是一个抽象的计算机模型,由一个无限长的纸带、一个读写头、一套规则和一个状态寄存器组成。图灵机可以模拟任何计算过程,它的提出证明了“可计算性”的概念,即任何能够被算法描述的问题都可以被图灵机解决。图灵机模型成为了理解计算机科学和复杂性理论的基石。
破解恩尼格玛密码
在第二次世界大战期间,Turing在英国政府密码学校布莱切利园工作,他领导的团队开发了一系列机器,称为“庞姆斯”,用于破解德国军队的恩尼格玛机密码。Turing的工作极大地缩短了战争,拯救了成千上万的生命。
图灵测试
Turing在1950年发表的论文“计算机器与智能”(Computing Machinery and Intelligence)中提出了图灵测试,这是评估机器是否能展现出与人类不可区分的智能行为的标准。图灵测试成为了人工智能研究中一个重要的概念。
Tim Berners-Lee:万维网的缔造者
Timothy John Berners-Lee,通常被称为Tim Berners-Lee,是一位英国计算机科学家,最著名的成就是在1989年发明了万维网(World Wide Web),从而彻底改变了信息交流和分享的方式。作为一个开放的、分散的信息空间,万维网使得人们能够通过互联网访问和共享信息。Berners-Lee的这一创新不仅促进了全球信息化的发展,也为数字经济的崛起奠定了基础。
发明万维网
在发明万维网之前,互联网已经存在,但主要被用于电子邮件和远程登录等功能。1989年,Tim Berners-Lee在欧洲核子研究组织(CERN)工作时提出了一个创新的想法,即创建一个开放的信息空间,人们可以通过超文本链接访问全球的文档和资源。这一想法很快被实现,万维网和第一个网页浏览器诞生了。
贡献和影响
Berners-Lee为万维网的发展做出了许多贡献。他定义了URL(统一资源定位符)、HTML(超文本标记语言)和HTTP(超文本传输协议)等关键技术标准,这些技术至今仍是网页和网站开发的基础。此外,Berners-Lee一直是推动网络开放性和中立性的积极倡导者,他反对网络审查和过度商业化,支持数据隐私和网络自由。
为了促进万维网技术的发展和开放标准的制定,Berners-Lee在1994年创立了万维网联盟(W3C),这是一个国际性的组织,旨在确保网络的长期增长。
案例:获取网页内容
我们可以打开浏览器 右键检查可以看到我们浏览器的http和html协议的格式,至今浏览器也还是这样延续
Jim Gray:大数据技术的开拓者
Jim Gray(1944-2007)是一位美国计算机科学家,他在数据库和大数据技术领域的贡献对整个计算机科学产生了深远的影响。Gray是微软研究院的技术研究员,2006年被授予图灵奖,以表彰他在数据库和事务处理系统领域的开创性贡献。
贡献
Jim Gray的研究重点在于改善数据库管理系统的性能和可靠性,他开发了许多数据库领域的关键概念和技术,包括:
- 事务处理系统:几乎所有的现代商业数据库系统都实现了Jim Gray提出的ACID(原子性、一致性、隔离性、持久性)原则,以确保数据库操作的可靠性和数据的完整性。金融服务行业、电子商务平台、在线支付系统等领域对事务处理的可靠性有极高的要求,都广泛应用了这些技术。
- 数据库恢复技术:数据库的恢复技术,如日志记录和检查点,是现代数据库管理系统(如Oracle, SQL Server, PostgreSQL等)的标准功能。这些技术确保了在系统崩溃或数据丢失事件发生时,数据可以被可靠地恢复到一致状态。
- 大规模科学数据处理:Jim Gray领导的“天空服务器”(SkyServer)项目是一个开创性的天文学数据处理和公共访问平台,它为全球的天文学家和公众提供了对斯隆数字巡天(SDSS)数据库的高效访问。此类技术在其他科学领域也有应用,例如基因组学数据处理、地理信息系统(GIS)、气候变化研究等。
- 云计算和大数据平台:Jim Gray的研究为处理和分析海量数据集提供了理论基础,这直接促进了云计算和大数据技术的发展。今天,云服务提供商(如Amazon Web Services, Microsoft Azure, Google Cloud Platform)提供的大数据处理服务,比如数据仓库服务(Amazon Redshift, Google BigQuery)和大数据处理框架(如Apache Hadoop和Spark),都受益于Jim Gray的贡献。
这些技术和理论不仅在学术界产生了深远的影响,更在商业和工业界找到了广泛的应用,支撑起了现代社会对数据的处理和分析需求。Jim Gray的工作证明了计算机科学研究对于推动技术进步和解决实际问题的重要性。
Hadley Wickham:R语言的变革者
Hadley Wickham 是一位新西兰统计学家和R语言的重要贡献者,他在数据科学和统计计算领域有着深远的影响。Wickham以其在数据可视化、数据整理和R语言包开发上的创新而闻名。他的工作极大地简化了数据分析的流程,使得数据处理和可视化变得更加高效和直观。
贡献
- ggplot2:Wickham开发的ggplot2包是基于语法图形理论的一个实现,提供了一种强大且灵活的方式来创建复杂的图形。它使得创建高质量的统计图形变得简单,成为了R语言中最受欢迎的可视化包之一。
- dplyr和tidyr:这两个包是数据整理的核心工具,dplyr提供了一套清晰的语法来操作数据框,包括过滤行、选择列、重新排序等操作;tidyr则用于将数据整理成整洁格式,简化了处理缺失值和重塑数据框的过程。
- RStudio和Tidyverse:Hadley Wickham是RStudio的首席科学家,RStudio是一个广受欢迎的R语言集成开发环境(IDE),为R语言用户提供了强大的支持。Tidyverse是由Wickham和其他贡献者开发的一系列R包的集合,包括ggplot2、dplyr、tidyr等,旨在提供一套统一的数据科学工具链。