《R的极客理想—工具篇》—— 导读

简介:

43be9f5dedf051afb1f5bfdd2a3768508eb3165e

前  言

为什么要写这本书
我是一名程序员,前后做了10年的程序开发工作。在这10年间,我从程序员一路做到架构师,经历了太多的系统和应用。我做过手机游戏,写过编程工具;做过大型Web应用系统,写过公司内部CRM;做过SOA的系统集成,写过基于Hadoop的大数据工具;做过外包,做过电商,做过团购,做过支付,做过SNS,也做过移动SNS。以前只用Java,然后开始用PHP……如同其他程序员一样,我一度陶醉于追求各种技术的创新,但始终有一个问题困扰着我,那就是如何才能够将我所掌握的技术转变成价值?这就好比我面对着一座金山,我拥有先进的技术,可以制作各种性能稳定、功能卓越的挖掘机器,但我不懂如何将矿石提纯,变成金子!每每看到别人利用我的技术挖掘出金子时,我只能满脸的羡慕,心中无限的不甘。
直到遇见R语言,我豁然开朗。R语言为我从另外一个角度开启了宝藏的大门,也让我对自己的职业重新思考、规划,最后坚定了我向统计、金融行业的转型。如果你也存在以上的问题,不如随着本书一起进入R语言的世界,领略R语言特有的魅力,通过对R语言的学习,重新认识大数据的价值,更深一步地提升个人价值。
随着我与统计、金融领域的朋友交流地逐步深入,我深刻地体会到,他们对R语言的实际使用也存在着很大的问题和困惑。比如,他们在某些实验室环境下,使用R语言可以很轻松、很顺利地实现预期效果,但是移植到真实环境下,面对浩瀚繁复的大数据,在使用R语言的过程中出现了很多问题。这就好比面对一座金山,他们掌握着先进的提纯技术,但他们所使用的挖掘、采集工具却还停留在石器时代!使用工具的落后,使他们要面对大量R语言之外的问题,这让他们应接不暇,甚至崩溃!有的人甚至因此认为,R语言只是一种实验室语言,至少以现在的技术水平无法将它运用到现实生活中,R语言在现实生活中广泛应用,简直是天方夜谭!
是的,如果你是一名没有计算机背景的R语言使用者,你在实际使用中也同样会遇到许多这样或那样的问题,面对这些棘手的问题寝食难安,尝试着通过各种方式寻求解决方案。其实,在计算机领域,这些问题已经早就有了成熟、有效的解决方案。
本书的内容来自我在R语言实际使用过程中的经验总结,基本都是我在工作中使用R语言的真实记录,其中涉及计算机、互联网、数据库、大数据、统计、金融等领域,详细总结了R语言在实际使用时与Java、MySQL、Redis、MongoDB、Cassandra、Hadoop、Hive、HBase等技术综合运用的解决方案,具有实战性,可操作性强。如果你与R语言接触时间不长,本书可以让你看到R语言在各行业、各领域所散发的魅力;如果你在某行业使用R语言已经有一段时间了,可能在使用R语言的过程中遇到了瓶颈,本书将让你看到R语言在与其他计算机语言结合后所迸发的强大活力;如果你是技术人员,本书中有全局观的案例实施,也许会给你带来新的启发,甚至跟我一样,重新规划自己的职业生涯,找到学习、奋斗的新方向;如果你是企业的中高层管理者,在本书中可以看到我们已经实现的技术成果,如果需要,你甚至可以按照书中记录的详细操作步骤,直接在企业环境中实施,直接获利!
在此,我不得不强调,本书不是入门书,不讲R的语法,如果你想学习R语言的基础语言入门知识,那么,你来错地方了。但是,如果你已经具备了一定的R语言基础,但不一定具有计算机语言背景,我将告诉你R语言在真实环境下到底都能够做什么,并且详细地告诉你怎样一步一步地实施。
在与各界R语言初学者的交流中,我发现,入门后,学习R语言最大的问题,在于如何使用R语言的众多软件包,而介绍这方面的图书很难找到,只有一些网上流传的小册子。本书涉及了30个R语言包,并结合我的使用心得及案例分析,相信会解决大家R语言入门后的困扰。
本书是“R的极客理想”系列图书的第一本,姊妹篇《R的极客理想—高级开发篇》将深入介绍R语言底层原理,并使用R语言开发出企业级的应用。
本书的使用环境涉及Linux Ubuntu和Windows 7两种操作系统,R语言包的2.15.3和3.0.1两个版本,在每一节中都有明确的标识。
R语言还在不断地进步和更新,它将引导一场数据的革命,跨学科的结合是时代趋势,也是我们的机遇!

目  录

前言
第一部分 R基础
第1章 R语言基础包
1.1 R是最值得学习的编程语言
1.1.1 我的编程背景
1.1.2 为什么我会选择R
1.1.3 R的应用前景
1.1.4 时代赋予R的任务
1.2 R的历史版本安装
1.2.1 R在Windows中安装
1.2.2 R在Linux Ubuntu中安装
1.2.3 R的最新版本安装
1.2.4 R的指定版本安装
1.3 fortunes 记录R语言的大智慧
1.3.1 fortunes介绍
1.3.2 fortunes安装
1.3.3 fortunes包的使用
1.4 formatR 代码自动化排版
1.4.1 formatR介绍
1.4.2 formatR安装
1.4.3 formatR的使用
1.4.4 formatR的源代码解析
1.4.5 源代码中的Bug
1.5 多人在线协作R开发RStudio Server
1.5.1 RStudio和RStudio Server
1.5.2 RStudio Server安装
1.5.3 RStudio Server使用
1.5.4 RStudio Server多人协作
1.6 R和JSON的傻瓜式编程
1.6.1 rjson包介绍
1.6.2 RJSONIO包介绍
1.6.3 自定义JSON的实现
1.6.4 JSON性能比较
1.7 R语言的高质量图形渲染库Cairo
1.7.1 Cairo介绍
1.7.2 Cairo包安装
1.7.3 Cairo使用
1.8 caTools:一个奇特的工具集
1.8.1 caTools介绍
1.8.2 caTools安装
1.8.3 caTools使用

第2章 时间序列基础包
2.1 R语言时间序列基础库zoo
2.1.1 zoo包介绍
2.1.2 zoo安装
2.1.3 zoo包的使用
2.2 可扩展的时间序列xts
2.2.1 xts介绍
2.2.2 xts包的安装
2.2.3 xts包的使用
2.3 时间序列可视化plot.xts
2.3.1 xtsExtra介绍
2.3.2 xtsExtra安装
2.3.3 xtsExtra包的使用

第3章 R性能监控包
3.1 R语言本地缓存工具memoise
3.1.1 memoise介绍
3.1.2 memoise安装
3.1.3 memoise使用
3.1.4 memoise()函数源代码分析
3.2 R语言性能监控工具Rprof
3.2.1 Rprof()函数介绍
3.2.2 Rprof()函数的定义
3.2.3 Rprof()函数使用: 股票数据分析案例
3.2.4 Rprof()函数使用: 数据下载案例
3.2.5 用profr包可视化性能指标
3.2.6 Rprof的命令行使用
3.3 R语言性能可视化工具lineprof
3.3.1 lineprof介绍
3.3.2 lineprof安装
3.3.3 lineprof使用

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
存储 缓存 负载均衡
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
之前给大家写了ChatGPT对接企业微信的教程,文章结尾说了教程只能适用于小规模使用,现在来写大规模使用的教程
228 0
【小白晋级大师】如何设计一个支持10万人用的ChatGPT对接系统
|
安全 算法 程序员
高效能程序员的修炼札记:安全基础,保护用户数据
高效能程序员的修炼札记:安全基础,保护用户数据
118 0
如何用简单的方式获取C端用户,实力派王素杰说要从B端做起|靠才华
在线教育作为o2o的巨大分支,一个曾经非常显著的优势是提供了新的传播途径。一根网线连接名师和用户,使得老师的个人能力不再局限于地域,用户的学习方式也不再局限于传统课堂。
386 0
|
域名解析 存储 安全
让理想中的企业级站点开发走进大众 - ServerlessDevs 1024特别奉献
本篇文章像大家介绍一下,如何使用serverless devs 结合云产品实现一个具备 高安全,高性能,高体验,高容灾,低成本的web站点
181 0
让理想中的企业级站点开发走进大众 - ServerlessDevs 1024特别奉献
想要搭建陪玩平台,这几点不容忽视
随着互联网经济的持续稳定发展,游戏市场的“封印”逐渐被打开,搭建陪玩平台成为一个新的热点。提起陪玩系统相信大家也不陌生,漫漫单排路如果有一个大神能带自己躺赢那是再好不过了,于是陪玩系统运营而生。想要搭建陪玩平台,应该注意哪些问题呢?
|
开发者 Cloud Native 流计算
为了让网速更快,阿里工程师与顶级数学家有一个大胆猜想 | 开发者必读(049期)
最炫的技术新知、最热门的大咖公开课、最有趣的开发者活动、最实用的工具干货,就在《开发者必读》!
6853 0
|
程序员 前端开发 智能硬件