forked from zhichaoluo/DataAnalysis
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathintroduction.Rmd
552 lines (277 loc) · 12.8 KB
/
introduction.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
---
title: ' Data Analysis Using R: Introduction'
author: "罗智超(ROKIA.ORG)"
documentclass: ctexart
output:
pdf_document:
fig_caption: yes
latex_engine: xelatex
number_sections: yes
template: C:/Users/roki/Documents/R/win-library/3.1/rticles/rmarkdown/templates/ctex/resources/default.latex
toc: no
html_document:
toc: no
classoption: hyperref`r if (.Platform$OS.type != 'windows') ',nofonts'`
---
# 联系方式
- 姓名: 罗智超(Rokia.org)
- 邮件: [email protected]
- QQ: 1814347
- QQ群:167472549
- 博客:http://rokia.org
- Git:http://www.github.com/zhichaoluo/DataAnalysis/
- 课件:http://pan.baidu.com/s/1qWv6NY8
# 注意事项
- 为兴趣、热情而不是为考试而学习
- 将手机关闭或者调整成静音状态
- 尽量坐在前排,如果你想学习
# 课程将给你什么?
- 一起度过一学期**痛并快乐**的学习时光
- 增强你的简历
- 增强你的动手处理和分析数据的能力
- 掌握一门将来可能赖以生存的技能
- 掌握常用的统计(数据科学)模型和方法
- 以上的收获将基于你的坚持与付出
注:本学期的课件相比之前几乎全部重新编写,加强以真实项目训练为导向,提升学生动手能力和独立解决问题能力,而不是单纯的知识点学习。
# 课程教材
- R In Action, Data Analysis and Graphics with R by Robert I. Kabacoff
- The Art of R Programming by Norman Matloff
- ggplot2: Elegant Graphics for Data Analysis by Hadley Wickham
- 统计建模与R软件 by 薛毅 陈立萍
# 辅助阅读材料
- Statistics: From Data to Evidence by Xizhi WU
- Statistics: With the application of R by Xizhi WU
- Data Manipulation With R by Phil Spector
- An Introduction to R by Bill Venables & David Smith
- R for Programmers by Norman Matloff
- The Lady Tasting Tea show Statistics Revolutionized Science in the Twentieth Century
# 课程主要大纲
# 前修知识
- 统计学原理
- 计算机一、二级
# 推荐网站
- http://www.rokia.org/
- http://www.r-project.org/
- http://www.rstudio.com/
- http://library.xmu.edu.cn/
- http://www.pinggu.org/
- http://COS.NAME/
- http://Coursera.org/
- http://www.jstatsoft.org/
- http://www.r-bloggers.com/
- http://www.stackoverflow.com/
- http://51qiangda.com/
- http://ctex.org/
- http://www.kaggle.com/
- http://www.kdnuggets.com/
- http://en.savefrom.net/
# 推荐软件
- Adobe Acrobat Professional
- CNKI E-Learning
- CTEX
- GIT
- RStudio/R
- UltraEdit
# 和数据有关的一些背景知识
#数据分析的重要性
- 几乎所有科学研究都要涉及数据分析
- 几乎所有文章发表都需要涉及数据分析
- 熟练掌握数据分析技能会使你在工作学习中成为“香馍馍”
- 养成数据分析思维
#数据分析如烹小鲜
Step | Data Analysis | Cooking
-----------|------------------------ | ------------------------
1 | Data, Software, Model | Raw Material, Kitchenware, cookbook
2 | Define the research question | Decide which dish to eat
3 | Collect Data | Shopping
4 | Data Cleaning | Cleaning
5 | Data Preparation | Chopping
6 | Modeling with theory and data | Cooking with cookbook
7 | Hypothesis Test | Taste
8 | Report | Decoration
最主要的差别是煮完菜要洗碗
#数据分析的流程
- Define the question
- Define the ideal data set
- Determine what data you can access
- Obtain the data
- Clean the data
- Exploratory data analysis
- Statistical prediction/modeling
- Interpret results
- Challenge results
- Synthesize/write up results
- Create reproducible code
#寿司之神-小野二郎
追求极致的工匠精神
#
![Jiro 1][1]
[1]:image/xiaoye01.png
#
![Jiro 2][2]
[2]:image/xiaoye02.png
#
![Jiro 3][3]
[3]:image/xiaoye03.png
#
![Jiro 4][4]
[4]:image/xiaoye04.png
#
![Jiro 5][5]
[5]:image/xiaoye05.png
# 数据分析的三项基本技能
- 数据操作能力
- 统计编程及绘图能力
- 统计理论及业务理解能力
#数据分析的问题类型
- 描述(Descriptive)
- 探索(Exploratory)
- 推断(Inferential)
- 预测(Predict)
- 因果(Casual)
- 机理(Mechanistic)
#数据的来源
- 普查
- 抽样调查
- 试验设计
#数据载体
- Tab-delimited text
- Comma-separated text
- Excel file
- JSON File
- HTML/XML file
- Database
# 统计学VS数据分析VS数据科学
- 统计学
收集、分析、展示和解释数据的科学。(吴喜之)
- 数理统计学
数理统计学是数学的一个分支。它的任务是研究怎样用有效的方法去收集和使用带随机性影响的数据。(陈希孺)
- 数据分析
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程(百度百科)
# 数据科学家
数据科学家是指能采用科学方法、运用数据挖掘工具对复杂多量的数字、符号、文字、网址、音频或视频等信息进行数字化重现与认识,并能寻找新的数据洞察的工程师或专家(不同于统计学家或分析师)。一个优秀的数据科学家需要具备的素质有:懂数据采集、懂数学算法、懂数学软件、懂数据分析、懂预测分析、懂市场应用、懂决策分析等。(百度百科)
一个数据科学家不能只擅长数字(这种人被称为统计学家或分析师),也要能够理解业务:什么样的数据或结果才是有参考性的;能够找到新的数据集并为其创造新产品;然后能够让CEO们理解这一切。这是一个艰巨的任务,这个世界上这类人是很少的。作为顶尖的数据科学家,不要求他们对环境做出什么积极的改变,但是需要他们尝试做一些真正先进的东西,帮助大家更好的解决业务上的问题。
# 数据科学家的六种能力:
1.对数据的提取与综合能力;
2.统计分析能力;
3.数据洞察与信息挖掘能力;
4.开发软件能力;
5.网络编程能力;
6.数据的可视化表示能力。
# 数据科学家涉及学科:
1.计算机科学:数据获取、数据解析、数据存放、和数据安全
2.数理统计学:数据分析、数据过滤、数据挖掘、和数据优化
3.图形设计学:显示数据结果,比如将数据表达成三维图形,以便更好地理解和利用
4.人机交互学:在用户和数据之间建立有机联系,使得人对数据的使用更方便
# Data Science Venn Diagram
![Data Science Venn Diagram][0]
[0]: image/Data_Science_Venn_Diagram.png
# 真实数据
- “脏”数据
-- 格式不规范
-- 缺失值
-- 错误数据
-- 异常值
- 格式不规范
# Dirty Data
![Dirty Data 1][6]
[6]:image/dirtydata01.png
#
![Dirty Data 2][7]
[7]:image/dirtydata02.png
# Anscombe Data List
```{r Anscombe Data List,echo=FALSE}
anscombe
```
思考:这样的数据表达方式是否有效
# Anscombe Data Mean
```{r anscombe mean, echo=FALSE}
sapply(anscombe,mean)
```
# Anscombe Data Variance
```{r anscombe var, echo=FALSE}
sapply(anscombe,var)
```
# Anscombe Data Plot
![Anscombe data plot][8]
[8]:image/anscombeplot.png
# 辛普森悖论
- 辛普森悖论(Simpson's Paradox)亦有人译为辛普森诡论,为英国统计学家E.H.辛普森(E.H.Simpson)于1951年提出的悖论,即在某个条件下的两组数据,分别讨论时都会满足某种性质,可是一旦合并考虑,却可能导致相反的结论。
- 辛普森悖论就像是欲比赛100场篮球以总胜率评价好坏,于是有人专找高手挑战20 场而胜1场,另外80场找平手挑战而胜40场,结果胜率41%,另一人则专挑高手挑战80场而胜8场,而剩下20场平手打个全胜,结果胜率为28%,比 41%小很多,但仔细观察挑战对象,后者明显较有实力。简单的将分组资料相加汇总,是不一定能反映真实情况的。
#
![Simpson's Paradox Graphic][9]
[9]:image/simpsonparadox.png
# 数据可视化
数据可视化在数据分析过程中起到非常核心的作用,并且随着交互式数据可视化工具的发展,其作用将更加明显。
# 你最常用的图表
![你最常用的图表][15]
# Social Network Map
![datavisual1][10]
[10]:image/datavisual1.png
# When Bots Attack
- Green: Attack points; Blue: Hackers; White: Target Sample; Red: Target
![datavisual2][11]
[11]:image/datavisual2.jpg
# Data Visualization Website
-- [Economist Graphic Detail](http://www.economist.com/blogs/graphicdetail/)
-- [Color Schemer](http://www.colorschemer.com/)
- Economist Graph Detail
![Economist 1][12]
[12]:image/economist1.png
- Economist Graph Detail
![Economist 2][13]
[13]:image/economist2.png
# Data Visualization Chart
-- Apple Products Timeline
![apple][14]
[14]:image/imac.png
[15]:image/yourgraphic.png
# 为什么是useR?
- S语言的理念,用它的发明者John Chambers的话说就是“to turn ideas into software, quickly and faithfully
- John Chambers 是这样对 R 语言是定义的
-- An interface to computational procedures of many kinds;
-- Interactive, hands-on in real time;
-- Functional in its model of programming;
-- Object-oriented, “everything is an object”;
-- Modular, built from standardized pieces;
-- Collaborative, a world-wide, open-source effort.
#关于R的前世今生的几篇文章
- 刘思喆,[R You Ready?——大数据时代下优雅、卓越的统计分析及绘图环境](http://cos.name/2012/05/r-you-ready/)
- 谢益辉,郑冰(2008). [R 语言的历史背景、发展历程和现状](http://cos.name/wp-content/uploads/2008/12/the-history-of-r-language-and-current-developments.ppt). 1st China R Conference
# SAS和R的比较分析
- 谢益辉在统计之都的[这篇文章](http://cos.name/2010/05/from-clt-simulation-to-normal-distribution/)后面的评论记录了SAS和R用户的一场口水战
-胡江堂有两篇[Think SAS(二)](http://cos.name/2010/04/think-sas-1/)[Think SAS(二)](http://cos.name/2010/12/think-sas-2/)值得读读
# R的学习曲线为什么陡峭
- 太灵活、选择太多
- 需要一定编程基础
- 真正陡峭的是后面的统计知识基本功(因为它的诞生本身就是用于统计研究)
#如何学习R
- 热爱编写代码
- 多动手写代码
- 多看别人代码
#如何寻找帮助
- R帮助文档
- stackoverflow.com
- stats.stackexchange.com/
- google/baidu
# 课后练习
- 评估下自己的R语言水平[测验](http://www.biostat.jhsph.edu/~rpeng/coursera/selfquiz/)
```{r,echo=FALSE,eval=FALSE}
score<-read.delim("clipboard")
score<-c(8,0,5,4,7,2,10,6,2,2,2,6,9,9,5,2,3,10,6)
summary(score)
hist(score,breaks=10,prob=T)
lines(density(score),lwd=1)
dev.off()
shapiro.test(score)
```
- 登陆QQ群
- 安装课程要求的软件
- 下载课件及相关教材
# 每周“大牛”
- Sir R.A.Fisher(1890~1962),全名Ronald Aylmer Fisher,生于伦敦,卒于 Adleaide(澳洲)。英国统计与遗传学家,现代统计科学的奠基人之一,并对达尔文进化论作了基础澄清的工作。
- Fisher 以天文学学士毕业于剑桥大学,也因对天文观测误差的分析,使他开始探讨统计的问题。毕业後几年,他曾到加拿大务农,工作于投资公司,也当过私立学校的老师。并在1915,1918发表两篇重要文章,前者探讨相关系数的分布;後者证明遗传上的连续变异,可用许多遵守孟德尔律的基因变异所叠加来解释。他一生在统计和生物的研究兴趣与才华,已经清楚地表现出来。
- 1919年他拒绝在 K. Pearson 下工作,任职于 Rothamsted 农业实验场。他负责的主要工作是植物播殖实验的设计,希望透过尽量少的时间、成本与工作量,得到尽量多的有用资讯;另外是要整理该实验场60年来累积的实验资料。Fisher 在这里发展他的变异数分析理论,研究假说测试,并且提出实验设计的随机化原则,使得科学试验可以同时进行多参数之检测,并减少样本偏差。
- 他在1925所著《研究工作者的统计方法》影响力超过半世纪,遍及全世界。而他在 Rothamsted 的工作结晶,同时也表现在为达尔文演化论澄清迷雾的巨著《天择的遗传理论》(1930)中,说明孟德尔的遗传定律与达尔文的理论并不像当时部份学者认为的互相矛盾,而是相辅相成的。并且认为演化的驱力主要来自选择的因素远重於突变的因素。这本著作将统计分析的方法带入演化论的研究。为解释现代生物学的核心理论打下坚实的基础。也因这本著作,Fisher 1933年获得伦敦大学的职位,从事 RH 血型的研究。
- 1943至1957年他回剑桥大学任教,1952年受封爵士,1956年出版《统计方法与科学推演》,最後三年,则在澳洲为国协科技研究组织 (CSTRO) 工作,并卒於任上。
#lt3l