
2. 高效R编程
3. 高效使用R笔记3
5. 《高效R语言编程》5-高效输入输出[1]
有种说法是“先把书读厚,再把书读薄”,我的理解是,才开始,看这书是挺薄的一本,翻开才发现有点头大,内容挺多,读到接近最后,发现内容也不是太多,大概就是这么一个过程啦!
Book description
有许多优秀的关于可视化、数据科学和包开发方面的R资源。有成百上千零散的简介、网页和论坛讲解如何在特定的领域中使用R。直到现在,很少有人编写关于如何简单地使R更高效地工作方面的内容。这本实践经验的指南将教初学者和经验丰富的R使用者如何编写高效的R代码。
借助多年教授R课程的经验,本书作者提供了从优化安装RStudio到借助C++的优势的广泛范围的实践建议,这使得本书成为任何R使用者书架的有益补充。广泛背景的学者、商业用户和程序员都将受益于本书的指导。
- 
关于设置R编程环境的建议。 
- 
探索一般编程概念和R的编码技术。 
- 
理解高效R工作流的组成部分。 
- 
学习在R中如何高效的读写数据。 
- 
深入探讨清理原始数据(数据木匠)的重要技巧。 
- 
使用性能分析、标准技巧和其他方法优化你的代码。 
- 
确定你用于R计算的硬件性能。 
- 
最大化R协作编程的好处。 
- 
促使你从R初学者往R程序员转变。 
Table of contents
- 
封面 
- 
版权页 
- 
O’Reilly介绍 
- 
译者序 
- 
目录 (1/2) 
- 
目录 (2/2) 
- 
前言 
- 
排版约定 
- 
使用示例代码 
- 
O’Reilly Safari 
- 
如何联系我们 
- 
致谢 
- 
Colin 
- 
Robin 
- 
第1章 概述 
- 
R包 
- 
在线版本 
- 
基准测试 
- 
基准测试例子 
- 
性能测试 
- 
盲打 
- 
一致风格和代码惯例 
- 
R学习资源 
- 
软件要求 
- 
读者对象和如何使用本书 
- 
什么是效率 
- 
R语言的高效性 
- 
为何需要高效? 
- 
通用的效率技巧 
- 
基准测试与性能测试 
- 
图书资源 
- 
参考文献 
- 
第2章 高效安装 
- 
测试BLAS库的性能提升 
- 
其他解释器 
- 
有用的BLAS/基准测试资源 
- 
安装和更新RStudio 
- 
窗口面板布局 
- 
RStudio设置 
- 
自动完成功能 
- 
快捷键 
- 
对象显示和输出表 
- 
项目管理 
- 
R启动参数 
- 
R启动文件综述 
- 
启动文件位置 
- 
.Rprofile文件 
- 
.Rprofile文件例程 
- 
.Renviron文件 
- 
安装R 
- 
更新R 
- 
安装R包 
- 
安装R包及依赖项 
- 
更新R包 
- 
操作系统与资源监视 
- 
软件要求 
- 
高效R配置的5个高级技巧 
- 
操作系统 
- 
R版本 
- 
R启动 
- 
RStudio 
- 
BLAS和其他R解释器 
- 
参考文献 
- 
第3章 高效编程 
- 
示例:均值函数 
- 
编译代码 
- 
函数闭包 
- 
示例:电影数据库 
- 
类型一致 
- 
内在排序 
- 
固定类别 
- 
致命错误: stop() 
- 
警告:warning() 
- 
信息输出:message()与cat() 
- 
不可见返回 
- 
内存分配 
- 
向量化代码 
- 
软件要求(配置) 
- 
高效编程5个技巧 
- 
一般性建议 
- 
与用户交互 
- 
因子(Factors) 
- 
Apply函数族 
- 
缓存变量 
- 
字节编译 
- 
参考文献 
- 
第4章 高效工作流 
- 
通过R Markdown生成的动态文档 
- 
R包 
- 
查找R包 
- 
如何选择R包 
- 
分而治之 
- 
使你的工作流更敏捷 
- 
通过R可视化项目计划 
- 
前提条件 
- 
高效工作流的5条高级技巧 
- 
项目规划类型学 
- 
项目规划与管理 
- 
包的选择 
- 
发布 
- 
参考文献 
- 
第5章 高效输入/输出 
- 
R自带的二进制格式:Rdata和Rds 
- 
Feather文件格式 
- 
二进制文件格式的基准测试 
- 
Protocol Buffers格式 
- 
fread()与read_csv()的差异 
- 
R外预处理文本 
- 
软件配置 
- 
关于数据I/O的5条高级技巧 
- 
使用rio的通用数据导入 
- 
纯文本格式 
- 
二进制文件格式 
- 
从因特网获取数据 
- 
访问包中的数据 
- 
参考文献 
- 
第6章 高效数据木匠 
- 
数据库与dplyr 
- 
列改名 
- 
改变列的类 
- 
滤除行 
- 
链操作 
- 
数据聚合 
- 
非标准计算 
- 
合并数据集 
- 
tidyr方便了收集与分割两个常见的操作。 
- 
使用separate()分割联合变量 
- 
其他tidyr函数 
- 
正则表达式 
- 
软件配置 
- 
高效数据木匠的5条高级技巧 
- 
高效的tibble数据框 
- 
使用tidyr与正则表达式整理数据 
- 
使用dplyr高效处理数据 
- 
使用数据库 
- 
使用data.table处理数据 
- 
参考文献 
- 
第7章 高效优化 
- 
一个简单的C++函数 
- 
cppFunction()命令 
- 
C++数据类型 
- 
sourceCpp() 函数 
- 
向量与循环 
- 
矩阵 
- 
基于Rcpp的C++语法糖(sugar) 
- 
Rcpp 资源 
- 
Apply函数的并行版本 
- 
例子:蛇梯棋游戏 
- 
谨慎退出 
- 
在Linux与OSX下的并行代码 
- 
if()函数与ifelse()函数 
- 
排序和排名 
- 
逆向排序 
- 
哪个索引是TRUE? 
- 
将因子转换成数值 
- 
逻辑AND与OR 
- 
行和列操作 
- 
is.na()与anyNA() 
- 
矩阵 
- 
开始profvis 
- 
软件配置 
- 
高效优化的5条高级技巧 
- 
代码分析 
- 
例子:模仿Monopoly 
- 
高效的基础R 
- 
例子:优化move_square()函数 
- 
并行计算 
- 
Rcpp 
- 
参考文献 
- 
第8章 高效硬件 
- 
云计算 
- 
亚马逊 EC2 
- 
软件配置 
- 
高效硬件的5条高级技巧 
- 
背景知识:什么是字节? 
- 
随机存取存储器 
- 
硬盘驱动器: HDD与SSD 
- 
操作系统:32位或64位 
- 
中央处理器 
- 
第9章 高效协作 
- 
提交 
- 
在RStudio中集成Git 
- 
GitHub 
- 
分支、分叉、更新、克隆 
- 
使用RStudio格式化代码 
- 
文件名 
- 
加载包 
- 
注释 
- 
对象名 
- 
样例包 
- 
赋值 
- 
空格 
- 
缩进 
- 
大括号 
- 
软件配置 
- 
编码风格 
- 
版本控制 
- 
代码审查 
- 
参考文献 
- 
第10章 高效学习 
- 
最少数据集 
- 
最小案例 
- 
Stack Overflow 
- 
邮件列表与讨论组 
- 
针对主题搜索R 
- 
查找与使用简介 
- 
获取函数帮助 
- 
阅读R源代码 
- 
swirl 
- 
软件配置 
- 
高效学习的高级5条技巧 
- 
使用R的内部帮助 
- 
在线资源 
- 
提出问题 
- 
深入学习 
- 
传播知识 
- 
参考文献 
- 
附录A 依赖包 
- 
附录B 参考文献 (1/2) 
- 
附录B 参考文献 (2/2) 
- 
作者介绍 
- 
封面介绍 
Product information
- 
Title: 高效R语言编程 
- 
Author(s): Colin Gillespie, Robin Lovelace 
- 
Release date: August 2018 
- 
Publisher(s): China Electric Power Press Ltd. 
- 
ISBN: None 
参考资料
《高效R语言编程》5-高效输入输出: https://www.jianshu.com/p/6d7934103511
本篇文章来源于微信公众号: 微因