| 所在主题: | |
| 文件名: R语言编程艺术.zip | |
| 资料下载链接地址: https://bbs.pinggu.org/a-2164390.html | |
| 附件大小: | |
|
【数据分析电子书免费下载】R语言编程艺术pdf_下载_mobi
R语言是世界上最流行的用于数据处理和统计分析的脚本语言。考古学家用它来跟踪古代文明的传播,医药公司用它来探索哪种药物更安全、更有效,精算师用它评估金融风险以保证市场的平稳运行。总之,在大数据时代,统计数据、分析数据都离不开计算机软件的支持,在这方面R语言尤其出色。 本书将带领你踏上R语言软件开发之旅,从最基本的数据类型和数据结构开始,到闭包、递归和匿名函数等高级主题,由浅入深,讲解细腻,读者完全不需要统计学的知识,甚至不需要编程基矗而书中提到的很多高级编程技巧,都是作者多年编程经验的总结,对有经验的开发者也大有裨益。本书精选了44个扩展案例,这些案例都源自于作者亲身参与过的咨询项目,都是与数据分析相关的,生动展示了R语言在统计学中的高效应用。 前言 致谢 第1章快速入门 1.1怎样运行R 1.1.1交互模式 1.1.2批处理模式 1.2第一个R会话 1.3函数入门 1.3.1变量的作用域 1.3.2默认参数 1.4R语言中一些重要的数据结构 1.4.1向量,R语言中的战斗机 1.4.2字符串 1.4.3矩阵 1.4.4列表 1.4.5数据框 1.4.6类 1.5扩展案例:考试成绩的回归分析 1.6启动和关闭R 1.7获取帮助 1.7.1help()函数 1.7.2example()函数 1.7.3如果你不太清楚要查找什么 1.7.4其他主题的帮助 1.7.5批处理模式的帮助 1.7.6互联网资源 第2章向量 2.1标量、向量、数组与矩阵 2.1.1添加或删除向量元素 2.1.2获取向量长度 2.1.3作为向量的矩阵和数组 2.2声明 2.3循环补齐 2.4常用的向量运算 2.4.1向量运算和逻辑运算 2.4.2向量索引 2.4.3用:运算符创建向量 2.4.4使用seq()创建向量 2.4.5使用rep()重复向量常数 2.5使用all()和any() 2.5.1扩展案例:寻找连续出现1的游程 2.5.2扩展案例:预测离散值时间序列 2.6向量化运算符 2.6.1向量输入,向量输出 2.6.2向量输入,矩阵输出 2.7NA与NULL值 2.7.1NA的使用 2.7.2NULL的使用 2.8筛选 2.8.1生成筛选索引 2.8.2使用subset()函数筛选 2.8.3选择函数which() 2.9向量化的ifelse()函数 2.9.1扩展案例:度量相关性 2.9.2扩展案例:对鲍鱼数据集重新编码 2.10测试向量相等 2.11向量元素的名称 2.12关于c()的更多内容 第3章矩阵和数组 3.1创建矩阵 3.2一般矩阵运算 3.2.1线性代数运算 3.2.2矩阵索引 3.2.3扩展案例:图像操作 3.2.4矩阵元素筛选 3.2.5扩展案例:生成协方差矩阵 3.3对矩阵的行和列调用函数 3.3.1使用apply()函数 3.3.2扩展案例:寻找异常值 3.4增加或删除矩阵的行或列 3.4.1改变矩阵的大小 3.4.2扩展案例:找到图中距离最近的一对端点 3.5向量与矩阵的差异 3.6避免意外降维 3.7矩阵的行和列的命名问题 3.8高维数组 第4章列表 4.1创建列表 4.2列表的常规操作 4.2.1列表索引 4.2.2增加或删除列表元素 4.2.3获取列表长度 4.2.4扩展案例:文本词汇索引 4.3访问列表元素和值 4.4在列表上使用apply系列函数 4.4.1lapply()和sapply()的使用 4.4.2扩展案例:文本词汇索引(续) 4.4.3扩展案例:鲍鱼数据 4.5递归型列表 第5章数据框 5.1创建数据框 5.1.1访问数据框 5.1.2扩展案例:考试成绩的回归分析(续) 5.2其他矩阵式操作 5.2.1提取子数据框 5.2.2缺失值的处理 5.2.3使用rbind()和cbind()等函数 5.2.4使用apply() 5.2.5扩展案例:工资研究 5.3合并数据框 5.4应用于数据框的函数 5.4.1在数据框上应用lapply()和sapply()函数 5.4.2扩展案例:应用Logistic模型 5.4.3扩展案例:学习中文方言的辅助工具 第6章因子和表 6.1因子与水平 6.2因子的常用函数 6.2.1tapply函数 6.2.2split()函数 6.2.3by()函数 6.3表的操作 6.3.1表中有关矩阵和类似数组的操作 6.3.2扩展案例: 提取子表 6.3.3扩展案例:在表中寻找频数最大的单元格 6.4其他与因子和表有关的函数 6.4.1aggregate()函数 6.4.2cut()函数 第7章R语言编程结构 7.1控制语句 7.1.1循环 7.1.2对非向量集合的循环 7.1.3if-else结构 7.2算术和逻辑运算符及数值 7.3参数的默认值 7.4返回值 7.4.1决定是否显式调用return () 7.4.2返回复杂对象 7.5函数都是对象 7.6环境和变量作用域的问题 7.6.1顶层环境 7.6.2变量作用域的层次 7.6.3关于ls()的进一步讨论 7.6.4函数(几乎)没有副作用 7.6.5扩展案例:显示调用框的函数 7.7R语言中没有指针 7.8向上级层次进行写操作 7.8.1利用超赋值运算符对非局部变量进行写操作 7.8.2用assign()函数对非局部变量进行写操作 7.8.3扩展案例:用R语言实现离散事件仿真 7.8.4什么时候使用全局变量 7.8.5闭包 7.9递归 7.9.1Quicksort的具体实现 7.9.2拓展举例:二叉查找树 7.10置换函数 7.10.1什么是置换函数 7.10.2扩展案例:可记录元素修改次数的向量类 7.11写函数代码的工具 7.11.1文本编辑器和集成开发环境 7.11.2edit()函数 7.12创建自己的二元运算符 7.13匿名函数 第8章数学运算与模拟 8.1数学函数 8.1.1扩展例子:计算概率 8.1.2累积和与累积乘积 8.1.3最小值和最大值 8.1.4微积分 8.2统计分布函数 8.3排序 8.4向量和矩阵的线性代数运算 8.4.1扩展示例:向量叉积 8.4.2扩展示例:确定马尔科夫链的平稳分布 8.5集合运算 8.6用R做模拟 8.6.1内置的随机变量发生器 8.6.2重复运行时获得相同的随机数流 8.6.3扩展案例:组合的模拟 第9章面向对象的编程 9.1S3类 9.1.1S3泛型函数 9.1.2实例:线性模型函数lm()中的OOP 9.1.3寻找泛型函数的实现方法 9.1.4编写S3类 9.1.5使用继承 9.1.6扩展示例:用于存储上三角矩阵的类 9.1.7扩展示例:多项式回归程序 9.2S4类 9.2.1编写S4类 9.2.2在S4类上实现泛型函数 9.3S3类和S4类的对比 9.4对象的管理 9.4.1用ls()函数列出所有对象 9.4.2用rm()函数删除特定对象 9.4.3用save()函数保存对象集合 9.4.4查看对象内部结构 9.4.5exists()函数 第10章输入与输出 10.1连接键盘与显示器 10.1.1使用scan()函数 10.1.2使用readline()函数 10.1.3输出到显示器 10.2读写文件 10.2.1从文件中读取数据框或矩阵 10.2.2读取文本文件 10.2.3连接的介绍 10.2.4扩展案例:读取PUMS普查数据 10.2.5通过URL在远程计算机上访问文件 10.2.6写文件 10.2.7获取文件和目录信息 10.2.8扩展案例:多个文件内容的和 10.3访问互联网 10.3.1TCP/IP概述 10.3.2R中的socket 10.3.3扩展案例:实现R的并行计算 第11章字符串操作 11.1字符串操作函数概述 11.1.1grep() 11.1.2nchar() 11.1.3paste() 11.1.4sprintf() 11.1.5substr() 11.1.6strsplit() 11.1.7regexpr() 11.1.8gregexpr() 11.2正则表达式 11.2.1扩展案例:检测文件名的后缀 11.2.2扩展案例:生成文件名 11.3在调试工具edtdbg中使用字符串工具 第12章绘图 12.1创建图形 12.1.1基础图形系统的核心:plot()函数 12.1.2添加线条:abline()函数 12.1.3在保持现有图形的基础上新增一个绘图窗口 12.1.4扩展案例:在一张图中绘制两条密度曲线 12.1.5扩展案例:进一步考察多项式回归 12.1.6添加点:points()函数 12.1.7添加图例:legend()函数 12.1.8添加文字:text()函数 12.1.9精确定位:locator()函数 12.1.10保存图形 12.2定制图形 12.2.1改变字符大小:cex选项 12.2.2改变坐标轴的范围:xlim和ylim选项 12.2.3添加多边形:polygon()函数 12.2.4平滑散点:lowess()和loess()函数 12.2.5绘制具有显式表达式的函数 12.2.6扩展案例:放大曲线的一部分 12.3将图形保存到文件 12.3.1R图形设备 12.3.2保存已显示的图形 12.3.3关闭R图形设备 12.4创建三维图形 第13章调试 13.1调试的基本原则 13.1.1调试的本质:确认原则 13.1.2从小处着手 13.1.3模块化的、自顶向下的调试风格 13.1.4反漏洞 13.2为什么要使用调试工具 13.3使用R的调试工具 13.3.1利用debug()和browser()函数进行逐步调试 13.3.2使用浏览器命令 13.3.3设置断点 13.3.4使用trace()函数进行追踪 13.3.5使用traceback()和debugger()函数对崩溃的程序进行检查 13.3.6扩展案例:两个完整的调试会话 13.4更方便的调试工具 13.5在调试模拟数据的代码时请确保一致性 13.6语法和运行时错误 13.7在R上运行GDB 第14章性能提升:速度和内存 14.1编写快速的R代码 14.2可怕的for循环 14.2.1用向量化提升速度 14.2.2扩展案例:在蒙特卡罗模拟中获得更快的速度 14.2.3扩展案例:生成幂次矩阵 14.3函数式编程和内存问题 14.3.1向量赋值问题 14.3.2改变时拷贝 14.3.3扩展案例:避免内存拷贝 14.4利用Rprof()来寻找代码的瓶颈 14.4.1利用Rprof()来进行监视 14.4.2Rprof()的工作原理 14.5字节码编译 14.6内存无法装下数据怎么办 14.6.1分块 14.6.2利用R软件包来进行内存管理 第15章R与其他语言的接口 15.1编写能被R调用的C/C 函数 15.1.1R与C/C 交互的预备知识 15.1.2例子:提取方阵的次对角线元素 15.1.3编译和运行程序 15.1.4调试R/C程序 15.1.5扩展案例:预测离散取值的时间序列 15.2从Python调用R 15.2.1安装RPy 15.2.2RPy语法 第16章R语言并行计算 16.1共同外链问题 16.2snow包简介 16.2.1运行snow代码 16.2.2分析snow代码 16.2.3可以获得多少倍的加速 16.2.4扩展案例:K均值聚类 16.3借助于C 16.3.1利用多核机器 16.3.2扩展案例:利用OpenMP解决共同外链问题 16.3.3运行OpenMP代码 16.3.4OpenMP代码分析 16.3.5其他OpenMP指令 16.3.6GPU编程 16.4普遍的性能考虑 16.4.1开销的来源 16.4.2简单并行程序,以及那些不简单的 16.4.3静态和动态任务分配 16.4.4软件炼金术:将一般的问题转化为简单并行问题 16.5调试R语言并行计算的代码 附录A安装R 附录B安装和使用包 |
|
熟悉论坛请点击新手指南
|
|
| 下载说明 | |
|
1、论坛支持迅雷和网际快车等p2p多线程软件下载,请在上面选择下载通道单击右健下载即可。 2、论坛会定期自动批量更新下载地址,所以请不要浪费时间盗链论坛资源,盗链地址会很快失效。 3、本站为非盈利性质的学术交流网站,鼓励和保护原创作品,拒绝未经版权人许可的上传行为。本站如接到版权人发出的合格侵权通知,将积极的采取必要措施;同时,本站也将在技术手段和能力范围内,履行版权保护的注意义务。 (如有侵权,欢迎举报) |
|
京ICP备16021002号-2 京B2-20170662号
京公网安备 11010802022788号
论坛法律顾问:王进律师
知识产权保护声明
免责及隐私声明