跳到正文Seminar Week 2 · Jimmy Huang's BlogLearning Outcomes
History of Data Science.
What is data science?
in a way that is effective and consistent.
Evolution of Data Science as a Discipline
1962 年:数据分析(John Tukey)
1980 年代:专家系统
1980 年代:机器学习
1990 年代:数据挖掘
Timeline of Data Science
数据科学时间线
Evolution of Data Science
技术炒作周期(Hype Cycle)
Gartner 的 炒作周期 用于衡量新兴技术的成熟度
Data Science Research
Relationship of Data Science to Other Disciplines
Related: Data Engineering
Related: Data Management
例如 ANDS、Talend、主数据管理…
道德、隐私、天意、策展、备份、治理…
Impact of Data Science
Your Life on the Cloud
社交生活(Facebook)
职业(LinkedIn)
搜索历史(Google 等)
健康与医疗(Fitbit 等)
音乐(Apple Music)
这一趋势带来诸多优势(如个人助手、健康管理支持),但也伴随风险:
安全与隐私泄露
企业数据泄漏给政府
无权访问或删除个人数据
“预犯罪”部门的潜在滥用
企业合并导致数据流转
“科学已定论”——政府可能据此强制决策
互联网在数据科学发展中的作用
互联网巨头是数据科学的最早使用者
互联网是数据源
互联网是数据科学工具的平台
以上全部
Science and social good
科学方法与数据科学
理论的终结(The End of Theory)
2008 年,Chris Anderson(《Wired》前总编)提出:在 “拍字节时代”,相关性已足够,无需再为因果模型耗费心力。
只要统计指标表明结果 A 优于 B,便可接受——Google 的搜索排序就是如此。
大数据使我们可以“停止寻找模型”,让数据自己说话。
模型示例——从简单到复杂
简单模型:人口增长的 逻辑斯蒂曲线 (Logistic growth curve),描述资源受限时的 S 形增长。 复杂模型:英国公共卫生部绘制的 肥胖系统图 (Obesity Systems Map),用数百个节点展示肥胖成因的相互作用。此处有一段内容暂不支持显示。
并非理论的终结
Massimo Pigliucci 质疑:若只寻找模式而不解释原因,就不再是科学;科学进步依赖可解释性。
Drew Conway 指出:并非所有领域都有充足数据,仍需要模型与假设。
Andrew Gelman 强调:“相关不等于因果”,未来也可能不同于过去。
数据科学推动前沿科学
物理学、生物信息学、地球科学等原本就依赖大数据,因而各自掀起新的数据革命。
政府相继创建跨学科机构,如 英国艾伦·图灵数据科学研究院 (Alan Turing Institute),推动数据驱动科研。
新的数据来源与工具(众包、社交媒体、DataONE 生态数据平台)让公民科学成为可能。
数据科学服务社会公益
Futurology
医疗保健未来学(Health Care Futurology)
你的身体可被“数据化”:胃部可通过传感器监测食物与营养
血液可实时监测胰岛素等指标
健康仪表盘:个人健康数据与全科医生 (GP) 实时共享
按绩效拨款:医保/健康管理机构 (HMO) 将资金与患者护理结果挂钩
行为可被追踪:昨晚冰淇淋或啤酒暴饮、今天缺席晨跑都可能被记录
汽车未来学(Automobile Futurology)
城市若无超速罚款收入,财政如何应对?
自动驾驶汽车时代,酒驾法规是否改变?
出租车行业 面临何种冲击?
汽车保险业 将如何调整?
仍在“手动驾驶”的人及其保险将何去何从?
Introduction to R and R Markdown.
R: A Powerful Data Science Tool
R 是一门编程语言可复现 (Reproducible)
可适应 (Adaptable)
为统计学家而生,功能化且专门化
RStudio, a tool for R
帮助管理完整工作流程Project 功能像文件柜,便于组织
丰富的 包 (Libraries) 管理
支持命令行与脚本双模式
让编写、运行、调试 R 代码更高效
R Markdown
R Markdown 是一种撰写格式(.Rmd 文件),可将 R 代码 与排版文本结合,让我们能够:
解释思路与流程
讨论所需代码
展示处理结果
解释输出
让他人完整复现
R Markdown格式
Knitting R Markdown
RStudio中点击 Knit,RStudio 会执行文档中的所有代码块
Visualising and aesthetics.
R 采用 Grammar of Graphics 描述数据到图形元素的映射
使用 R 绘图
R 中的方面
有时,你会想进一步划分数据,绘制多个可视化图表。例如,如果你想分别分析不同年龄段的结核病数据,该怎么办?
p <- p + facet_grid(~ age_group)
Visualising it all
Introduction to data wrangling.
Wrangling the data
是指将原始数据转化为可分析的数据, 以生成有效且可行的结果和洞见的过程
并非所有数据都能立即使用
并非所有数据都是干净且整齐的
我们需要先把数据“整形”成可用的状态
什么时候需要Data Wrangling
Tidy data
Tidy data是一种组织和使用数据的结构化方法:
标准化你的数据,可同步标准化所有工具与流程;
最小化反复进行数据整形的需求。
R 中的整洁数据
数据通常以 宽格式(wide)——列很多;或 长格式(long)——行很多——存储。 在 R 中,使用 tidyverse 套件及其“动词”实现整理:gather:宽 → 长;
spread:长 → 宽;
separate:把一列中的复合变量拆分成多列。
Gather
gather(或 pivot_longer)将凌乱数据转换为长表。
key(标识符列)— 收集列的新变量名
value(度量值列)— 收集值的新变量名
names — 要收集的原列名
结果:原先的 male, female 两列被压缩为一列 sex,其计数进入 count 列。
Spread
spread(或 pivot_wider)把长表转换为宽表,与 gather 相反。
separate 用于将复合列拆分为两个或更多变量。
separator(分隔符;默认为非字母数字字符)
新变量名(拆分后新列)
整洁数据与数据整形
数据整形 ≠ 只有整洁数据
整洁数据 ≠ 只用于数据整形
二者同样关键:高效 (efficient)
一致 (consistent)
可重复 (repeatable)
# Top Heading
## Sub-heading
- List item 1
- List item 2
[Link to Monash](https://my.monash.edu)
```{r}
library(tidyverse)
smaller <- filter(diamonds, carat <= 2.5)
smaller
```
tb_smaller_long <- gather(tb_smaller,
key = "sex",
value = "count",
male, female)
Long_data <- spread(messy_data, key, val)
tb_long2 <- separate(tb_long,
"sex_agegroup",
c("type", "sex_agegroup"),
sep = "_(?=[mf])")