新書推薦:
《
精致考古--山东大学实验室考古项目论文集(一)
》
售價:NT$
1112.0
《
从天下到世界——国际法与晚清中国的主权意识
》
售價:NT$
347.0
《
血色帝国:近代英国社会与美洲移民
》
售價:NT$
265.0
《
海外中国研究·王羲之:六朝贵族的世界(艺术系列)
》
售價:NT$
811.0
《
唐宋绘画史 全彩插图版
》
售價:NT$
449.0
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:NT$
485.0
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
編輯推薦:
本书采用双色印刷,部分重点图片可扫码观看彩图。本书采用次加大开本印刷,使代码的阅读更加方便。
本书与常规介绍SAS、R语言、Stata和Python等统计软件的书籍的区别在于避免只讲统计分析而忽略如何高效、准确地提取主要结果,如何生成可直接用于汇报、交流或达到SCI发表要求的表格。
本书立足于目前大数据研究的现状分三步进行讲解。首先强调必须掌握的数学和统计学基础知识;其次,根据真实世界的电子病历及健康注册系统的数据特征,模拟出与其复杂程度和处理难度相当的模拟数据库;再次,针对同一研究问题,在SAS、R语言、Stata和Python中进行同步处理,详细讲解如何在这4个统计软件中实现从数据导入、数据清洗、统计分析、整理输出结果(表格或图)到结果解释的全部过程,从而可完成软件的对比学习,达到事半功倍的效果。以上3点也是本书的特色所在。
笔者将着眼于真实世界的医学研究,主要介绍在四个软件中常用的、效的命令及编程方法,使数据工作者能够在短时间内掌握每个软件的精髓,并且能够学以致用,切实应用到自己的研究项目中解决相关问题。但本书不会过多的涉及诸如模型的比较和选择等问题,因该类问题常是由研
內容簡介:
面对日渐复杂的大数据,科技工作者很难用单一的统计软件高效、完美地完成从数据挖掘、数据清洗、统计分析到结果呈现的全部工作,因此需要熟悉和掌握多种统计工具,各取所长、整合使用。本书立足于大数据研究的现状,基于实际医疗案例,介绍数学基础知识和统计学基础知识,SAS、R语言、Stata和Python这4款大数据常用分析工具的基础编程知识及实践操作。 本书主要面向在校本科生、研究生,以及要掌握SAS、R语言、Stata和Python的数据工作者,熟悉四个软件的任意一个且想要在短时间内掌握其他软件的读者,也适合医科学生、临床医生或药企人员等医疗相关人员学习使用。
關於作者:
孙江伟 复旦大学流行病与卫生统计学专业硕士,曾在强生公司(Johnson &Johnson)任生物统计师,对国内医药临床领域及国外医疗注册系统等大数据的数据管理、数据清洗、研究设计及统计分析,有丰富的理论及实践经验,现于瑞典卡罗林斯卡医学院进行卫生统计学方面的研究深造。在American Journal of Epidemiology、European Journal of Neurology等杂志发表相关领域SCI论文10篇。
目錄 :
第1章数学基础1
1.1常用的数学符号1
1.2常见概念2
1.2.1集合2
1.2.2极限3
1.3微积分5
1.3.1导数与微分5
1.3.2基本初等函数的导函数和微分公式6
1.3.3导数与微分的运算法则7
1.3.4定积分与不定积分8
1.3.5基本的不定积分公式9
1.3.6定积分与不定积分的性质10
1.4线性代数11
1.4.1标量与向量11
1.4.2矩阵与线性方程组11
1.4.3行列式的定义与运算12
1.4.4矩阵的运算法则14
1.4.5特殊的矩阵16
1.4.6矩阵的秩17
1.4.7矩阵的转置与矩阵的逆18
1.4.8特征向量与特征值18
第2章统计学基础20
2.1概率论的基本概念20
2.2随机变量与分布21
2.2.1随机变量21
2.2.2累积分布函数222.2.3概率函数22
2.3随机变量的数学特征23
2.3.1数学期望23
2.3.2期望值的规律24
2.3.3条件期望25
2.3.4协方差与相关系数25
2.3.5样本均值和方差26
2.4常见的随机变量分布27
2.4.1离散变量分布27
2.4.2连续变量分布28
2.5统计学基本概念32
2.5.1总体与样本32
2.5.2参数和统计量32
2.5.3中心极限定理32
2.6统计描述32
2.6.1定量资料的统计描述32
2.6.2分类资料的统计描述34
2.7统计推断34
2.7.1参数估计34
2.7.2假设检验38
2.8多因素回归模型40
2.8.1多因素线性回归模型40
2.8.2多因素Logistic回归模型41
2.8.3多因素Cox回归模型43
第3章软件基础总论45
3.1软件初识45
3.1.1SAS45
3.1.2R语言45
3.1.3Stata45
3.1.4Python46
3.24个软件的比较46
第4章SAS基础52
4.1SAS介绍与资源52
4.1.1SAS语言及程序结构52
4.1.2SAS工作界面53
4.1.3获得帮助54
4.2数据的导入与导出55
4.2.1导入数据55
4.2.2导出数据67
4.3SAS中常用的函数70
4.3.1字符型函数70
4.3.2数值型函数80
4.3.3日期型函数84
4.3.4特殊函数86
4.3.5其他函数89
4.4SAS变量91
4.4.1变量属性92
4.4.2自动变量92
4.4.3变量列表的缩写规则92
4.4.4创建变量94
4.4.5改变变量属性96
4.4.6改变变量类型96
4.5SAS数据处理97
4.5.1选取变量97
4.5.2创建变量99
4.5.3对观测求和100
4.5.4选取并操作部分观测102
4.5.5循环和数组104
4.5.6数据集的横向合并和纵向合并107
4.5.7增加数据集处理灵活性的SAS选项111
4.6SAS中常见的proc步113
4.6.1proc contents113
4.6.2proc datasets114
4.6.3proc freq116
4.6.4proc means118
4.6.5proc sort120
4.6.6proc transpose121
4.6.7proc univariate123
4.6.8proc corr125
4.6.9proc reg126
4.6.10proc logistic128
4.6.11proc lifetest129
4.6.12proc phreg130
4.7PROC SQL131
4.7.1检索数据131
4.7.2合并数据集135
4.7.3使用PROC SQL管理表137
4.8SAS宏介绍143
4.8.1宏变量143
4.8.2宏函数147
4.8.3宏程序151
4.8.4宏参数152
4.8.5宏语言与data步153
4.8.6宏语言与PROC SQL157
4.8.7条件语句和循环语句在宏语言中的使用161
第5章R语言基础163
5.1R语言介绍163
5.1.1R语言的特点与资源163
5.1.2RStudio使用简介163
5.2R语言的基本规则164
5.2.1对象165
5.2.2函数使用基础165
5.2.3扩展包166
5.2.4帮助167
5.3数据类型167
5.3.1vector167
5.3.2factor169
5.3.3date171
5.3.4matrix172
5.3.5list175
5.3.6data.frame179
5.3.7formula181
5.4常用函数介绍182
5.4.1数据的读入和导出182
5.4.2条件判断183
5.4.3循环186
5.4.4文本处理188
5.4.5基本作图190
5.4.6自定义函数192
5.5常用数据处理与统计分析函数195
5.5.1单变量分析195
5.5.2双变量、多变量分析198
5.5.3线性回归模型200
5.5.4Logistic回归模型202
5.5.5生存分析模型203
5.6dplyr包简介206
5.6.1安装dplyr包206
5.6.2dplyr包中常用的5个函数206
5.6.3用%>%运算符连接多个函数211
5.6.4dplyr包中其他实用的函数212
5.7ggplot2包简介214
5.7.1安装ggplot2包214
5.7.2使用ggplot2画图的基本思路214
5.7.3使用geom_histogram函数绘制直方图215
5.7.4使用geom_bar函数绘制柱状图217
5.7.5使用geom_boxplot函数绘制箱形图217
5.7.6使用geom_point函数绘制散点图220
5.7.7使用geom_smooth函数在散点图上添加线性回归结果223
5.7.8对图中细节进行微调224
5.7.9将多个图合并为一个图225
5.7.10保存图228
第6章Stata基础229
6.1Stata简介229
6.1.1界面介绍229
6.1.2在菜单栏中选择命令230
6.1.3输入命令代码230
6.2获得帮助230
6.2.1检索关键词230
6.2.2查看帮助231
6.2.3帮助建议231
6.3语法结构231
6.3.1变量集232
6.3.2by前缀233
6.3.3命令234
6.3.4=表达式234
6.3.5if表达式236
6.3.6in范围236
6.3.7权重237
6.3.8命令选项237
6.3.9数值集合238
6.3.10文件名238
6.4数据转换与分析239
6.4.1导入数据239
6.4.2浏览数据与基本描述240
6.4.3数值变量243
6.4.4文本变量247
6.4.5日期变量252
6.4.6缺失值253
6.4.7注释变量254
6.4.8调整数据结构256
6.4.9基本描述258
6.4.10统计检验260
6.4.11相关分析262
6.4.12回归分析263
6.4.13导出数据267
6.5输出结果调用268
6.5.1一般统计命令结果调用268
6.5.2估计命令结果调用269
6.6重复命令271
6.6.1by前缀271
6.6.2foreach循环274
6.6.3forvalues循环275
6.7编程工具275
6.7.1do文件275
6.7.2标量变量276
6.7.3宏变量277
6.7.4矩阵279
6.7.5程序283
第7章Python基础284
7.1Python的安装284
7.1.1使用Python安装包安装Python 3284
7.1.2通过Anaconda安装Python 3285
7.2常用交互式语言开发环境287
7.2.1编辑器288
7.2.2控制台289
7.2.3变量管理器290
7.3常用数据类型、数据结构与基本语句291
7.3.1Python中的变量命名规则291
7.3.2常见的数据类型及运算291
7.3.3常见的数据结构及运算291
7.3.4个程序295
7.3.5函数295
7.3.6常用逻辑语句298
7.4数据的导入与导出302
7.4.1数据的读取302
7.4.2数据存储304
7.5基础运算常用包——NumPy 304
7.5.1基本性质304
7.5.2矢量化运算306
7.5.3NumPy中的函数306
7.5.4ndarray的轴、索引与切片309
7.5.5实战举例: 用NumPy进行图像处理313
7.6数据处理常用包——Pandas316
7.6.1主要数据类型316
7.6.2对DataFrame的描述318
7.6.3缺失值的检测与处理319
7.6.4DataFrame的索引321
7.6.5常见操作325
7.6.6字符处理专题328
7.6.7apply专题331
7.6.8groupby专题333
7.7统计分析常用包338
7.7.1单样本t检验339
7.7.2独立样本t检验340
7.7.3两个连续型变量的相关性341
7.7.4两个分类变量的频数统计341
7.7.5线性回归模型342
7.7.6Logistic回归模型345
7.7.7生存分析347
7.8绘图常用包352
7.8.1Pandas352
7.8.2Matplotlib356
7.8.3Seaborn360
第8章软件实践总论366
8.1本书使用的数据集366
8.1.1病人基本信息数据集366
8.1.2诊断信息数据集367
8.1.3实验室检测结果数据集(一)368
8.1.4实验室检测结果数据集(二)368
8.1.5用药信息数据集368
8.1.6急性心肌梗死数据集369
8.2软件实践步骤369
8.2.1数据清洗369
8.2.2数据准备370
8.2.3数据分析370
8.2.4结果整理370
8.2.5代码的重复使用370
8.3实例: 拟研究的课题371
第9章SAS实践部分372
9.1数据的清洗与管理372
9.1.1病人基本信息数据集372
9.1.2诊断信息数据集376
9.1.3实验室检测结果数据集(一)381
9.1.4实验室检测结果数据集(二)387
9.1.5用药信息数据集390
9.2数据分析与结果整理393
9.2.1定量数据的统计描述394
9.2.2分类数据的统计描述398
9.2.3相关分析402
9.2.4线性回归分析406
9.2.5Logistic回归分析412
9.2.6Cox回归分析418
第10章R语言实践部分425
10.1数据的清洗与管理425
10.1.1病人基本信息数据集425
10.1.2诊断信息数据集431
10.1.3实验室检测结果数据集(一)435
10.1.4实验室检测结果数据集(二)439
10.1.5用药信息数据集442
10.2数据分析与结果整理445
10.2.1定量数据的统计描述446
10.2.2分类数据的统计描述449
10.2.3相关分析452
10.2.4线性回归分析453
10.2.5Logistic回归分析457
10.2.6Cox回归分析463
第11章Stata实践部分470
11.1数据的清洗与管理470
11.1.1病人基本信息数据集470
11.1.2诊断信息数据集483
11.1.3实验室检测结果数据集(一)490
11.1.4实验室检测结果数据集(二)495
11.1.5用药信息数据集500
11.2数据分析与结果整理504
11.2.1定量数据的统计描述504
11.2.2分类数据的统计描述511
11.2.3相关分析516
11.2.4一般线性回归分析519
11.2.5Logistic回归分析526
11.2.6Cox回归分析535
11.3Stata在Meta分析中的应用545
11.3.1Meta分析简介545
11.3.2二分类变量的Meta分析548
11.3.3连续性变量的Meta分析552
11.3.4发表偏倚分析553
第12章Python实践部分557
12.1数据的清洗与管理557
12.1.1病人基本信息数据集557
12.1.2诊断信息数据集566
12.1.3实验室检测结果数据集(一)571
12.1.4实验室检测结果数据集(二)578
12.1.5用药信息数据集582
12.2数据准备和数据分析584
12.2.1定量数据的统计描述584
12.2.2分类数据的统计描述587
12.2.3相关分析589
12.2.4线性回归分析591
12.2.5Logistic回归分析595
12.2.6Cox回归分析602参考文献609附录A常用假设检验方法610附录B正则表达式619附录C系统综述与Meta分析技术路线图622
內容試閱 :
随着计算机与信息技术的发展,互联网、大数据、人工智能等现代信息技术不断实现突破,逐渐渗透到人类生产生活的各个领域,以前所未有的方式将人们带入一场剧烈的信息变革之中。随着社会信息化程度的日益加深,医疗行业数据系统的信息容量也在不断扩大,高效地挖掘和利用这些宝贵的医学信息资源,为疾病的预防、诊断和治疗提供科学的决策依据,促进医学研究的进一步发展,具有非常重要的意义。与此同时,数据数量与日俱增,数据质量参差不齐,这使得医疗工作者和科研人员的工作难度不断加大,对专业技术水平、数据分析方法和团队科研协作都提出了更高的要求。
面对日渐复杂的大数据,科学工作者很难用单一的统计软件高效、完美地完成从数据挖掘、数据清洗、统计分析到结果呈现的全部工作,因此需要熟悉和掌握多种统计工具,各取所长、整合使用。例如,SAS作为一个成熟度高、稳定性强的商业化系统,有强大的大数据管理及清洗的功能,在公司和企业中的应用非常广泛,但是它在对大数据(如健康注册系统)进行某些统计分析时,运行速度较慢。相对而言,Stata、R语言和Python却可以非常快速地完成同样的运算程序。此外,Stata是对初学者非常友好的软件,命令简单,运行速度快,是非常出色的统计软件;R语言有极其灵活和强大的绘图能力,可以更好地表现数据结果,大大提升数据分析的效率;Python以语言简单、分析高效而著称,尤其在机器学习、文本处理等领域表现突出。因此,如果能掌握几种统计软件的使用方法,并且能够根据具体研究目的自由切换不同的统计软件,则可以达到事半功倍的效果。
此外,大规模的项目通常需要跨单位、跨学科合作,科研团队的国际化、多元化的趋势越来越明显。每个研究人员的背景不同,擅长的领域或使用的统计软件也大相径庭。为了更好地进行学术交流,促进彼此之间的合作,完成复杂的研究项目,熟悉和掌握多种统计软件的基本操作就显得非常重要。但是,学习任何一门技术都需要投入大量的时间和精力,若想同时掌握多种统计软件的使用方法,需要付出更多的时间和努力。幸运的是,SAS、R语言、Stata和Python等软件的数学和统计学基础是相通的,主要区别在于它们采用不同的语言环境和编程方法。如果读者已经掌握其中任何一个软件的操作和使用方法,再去学习其他3种软件,则会触类旁通,大大提高学习效率。但是,目前还没有相关的书籍介绍如何将SAS、R语言、Stata和Python这4种常用的统计软件整合起来,用于大数据的管理和分析。
目前,市面上单独介绍SAS、R语言、Stata和Python等统计软件的书籍大多面面俱到地讲解每个命令、每个选项、每个模块,针对一种统计方法提供尽可能多的解决方案。的确,这样可以帮助读者全面、具体地了解各个软件,但同时也可能使读者花费很多时间学习了大量不实用的知识。此外,大多数介绍统计软件的书籍往往止步于如何进行统计分析,而常常忽略了如何高效、准确地提取主要结果,如何生成可直接用于报告、交流或达到SCI发表要求的表格等方面。
因此,本书立足于大数据研究的现状,首先介绍必须掌握的数学和统计学基础知识;其次,根据真实的电子病历及健康注册系统的数据特征,模拟出与其复杂程度和处理难度相当的模拟数据库;后,针对同一研究问题,在SAS、R语言、Stata和Python中进行同步处理,详细讲解如何在这4个统计软件中实现从数据导入、数据清洗、统计分析、结果整理输出(表格或图)到结果解释的全部过程,从而可完成软件的对比学习,达到事半功倍的效果。以上3点也是本书的特色所在。
本书着眼于真实的医学领域的数据处理问题,主要介绍在4个软件中常用、效的命令及编程方法,使数据工作者能够在短时间内掌握每个软件的精髓,并且能够学以致用,切实应用到自己的研究项目中,解决相关问题。但本书不会过多地涉及诸如模型的比较和选择等问题,因为这类问题通常是由研究课题或项目决定的,不存在“放之四海而皆准”的准则。对这类问题感兴趣的读者,请查阅相关书籍或文章。
本书可分为3部分: 第1部分包括第1、2章,介绍数学基础知识和统计学基础知识;第2部分包括第3~7章,在概要介绍统计软件基础知识之后,分别介绍SAS、R语言、Stata和Python的基础编程知识;第3部分包括第8~12章,在概要说明本书软件实践的几个重要问题之后,分别介绍SAS、R语言、Stata和Python的实践内容。读者可根据自己的兴趣和时间自行选择相应的章节学习。建议读者在阅读某软件的基础编程知识和实践操作前,先阅读第3章和第8章,从而了解本书的布局。
本书主要面向在校本科生、研究生,以及要掌握SAS、R语言、Stata和Python的数据工作者,熟悉4种软件的任意一种且想要在短时间内掌握其他软件的读者,尤其适合医科学生、临床医生或药企人员等医疗相关人员学习使用。
笔者自2014年萌生编写本书的想法,2017年动笔,2019年组建编写团队,到2020年春完成初稿,其间曾多次产生放弃的念头,幸好坚持了下来。笔者一直坚信“二八定律”,即学习并掌握一个软件的20%的基础知识,将能使用户理解80%的软件功能,从而能顺利完成80%的工作任务。尽管本书介绍的诸多方法看起来很容易理解和掌握,但要想真正用好这些软件,仍需读者仔细钻研、刻苦练习。不过这些努力是值得付出的,假以时日,所有努力都会带来丰厚的回报。
感谢Fang Fang教授、Yudi Pawitan教授给予笔者的大力支持;感谢邓文江同学在R语言部分的付出;感谢编写团队成员在整个过程中的坚持和付出,从而使本书得以完成;后,感谢清华大学出版社编辑给予本书的帮助和指导,从而使本书得以顺利出版。书中难免存在疏漏和不足之处,恳请读者不吝赐教,笔者将感激不尽。
孙江伟
2021年4月