赠书|都2023年了,R语言可以这样学?《R语言编程—基于tidyverse》
关注我们丨文末赠书
美国五大科技公司工作中应用最多的十大编程语言,其中既包括C++、Java这些程序圈的“扛把子”选手,也包括R、Python等当红炸子鸡。纵然和一票经典语言同时上榜,R语言也丝毫没带怕的——该媒体甚至称R语言自诞生起就打开了“机遇之门”。
多栖教授:为R语言正名!
图:作者知乎主页
在研究和工作中,张教授时常用到编程技术与R语言,也观察到R语言教学的“惨淡”现状:绝大多数R语言教材仍在沿用那些过时的、晦涩的R语法。多数老师和学习者对语言的印象还停留在 5 年前:
“语法晦涩难懂、速度慢,做统计分析和绘图还行。”
“机器学习只有单独算法的包,做不了深度学习、大数据、工业部署……”
“数学语言与编程语言是相通的,都是用语法元素来表达和解决问题,我想把这些理解体会用符合国人的语言习惯表达出来。”
带着这样的信念,张教授奋笔疾书,完成了这本《R语言编程—基于tidyverse》。他希望读者借由本书能够学到正确的编程思想、最新的R语言编程知识和编程思维,完成R语言入门或R知识汰旧换新。
干货满满,秒变编程高手!
张教授希望新手能够一步到位、老手能够温故知新,这样才能兼顾到不同水平的读者。为此,他几乎倾尽所有,有多少给多少,超容量放送内容,颇有“加量不加价”的诚意。
技术足够新
作者用R语言最新的Tidyverse讲授知识
内容足够易懂
目前市面上的读物形成了分水岭:
一方面,国外有不少优秀的 R语言编程书,但如果读者英文水平不够,就只能望洋兴叹,就算是有了中文版,翻译也往往就只是“直译”,只把表面意思用生硬的汉语表达出来;
另一方面,国内 R 语言编程书虽然也不少,但大多数只是罗列堆砌编程语法。要知道,编程最重要的是弄懂底层逻辑和不停实践,只学语法提升十分有限。
“讲得透的看不懂、讲得浅的学不会”——这种情况让初学者很难快速把R语言学明白、把程序编出来。
书中在细致地讲解R语言
张教授的初衷就是要解决这个困境。他认为,解决办法就是在教学中真正融入编程思维:引导读者形成编程思想,了解编程语法到底是怎么回事,应该用在哪、到底怎么用。
无论是理论还是编程,每个知识点,张教授都会搜集很多相关最新资料,保证先学个透彻明白,再把自己的理解用最通俗易懂语言表达出来,完全是掰开了、揉碎了、从头开始讲,生怕读者不理解,力求让0基础读者也能无障碍读懂。
实例足够多
只通过编程语法讲透彻R语言还不够,必须配以合适的实例来演示。
张教授建议读者一定要将编程语法讲解与配套实例结合起来阅读,比起实例代码调试通过,更重要的是借助实例代码理解透彻该编程语法、所包含的编程思维。
本书后半部分是R语言在应用统计、探索性数据分析、文档沟通方面的应用,所配案例力求能让读者上手使用。
书中的编程实例展示
在附录中,作者还将透视表、网络爬虫、高性能计算、机器学习等典型应用囊括其中,为读者提供了更丰富的 R 实用编程案例。
为了保证学习质量,他不仅调试了全部R 程序代码,还把示例数据、R 程序、PPT讲稿、教学大纲、彩图等系列配套资源毫无保留地全部献上,读者只要登录异步社区官网、GitHub、码云社区,就可以免费get以上干货!感兴趣的读者还可以加入作者QQ群,让读者直接答疑。
书中配套资源
也就是说,购买本书不仅能够得到一本接地气的R教程,还等于拿到了一本R语言语法大全的工具书,简直一举多得!
张教授对此十分自信,他表示:读者如果用这本书入门R语言或者更新知识,就会自动跳过写低级啰嗦代码的阶段,直接进入写让别人羡慕的 “高手级”代码的行列。
从根本上打造编程思维
● 将向量化编程思维和函数式编程思维,纳入数据框或更高级的数据结构中比如,向量化编程能同时操作一个向量的数据,我们将其转变成在数据框中操作一列的数据或者同时操作数据框的多列,甚至分别操作数据框每个分组的多列;将函数式编程转变成为想实现的操作自定义函数(或使用现成函数),再依次应用到数据框的多个列上,以修改列或进行汇总。
●将复杂数据操作分解为若干基本数据操作
复杂数据操作都可以分解为若干简单的基本数据操作:数据连接、数据重塑(长宽变换/拆分合并列)、排序行、选择列、修改列、分组汇总等。一旦完成问题的梳理和分解,又熟悉每个基本的数据操作,用“管道流”依次对数据做操作即可。
●接受数据分解的操作思维
比如,想对数据框进行分组,分别对每组数据做操作,整体来看这是不容易想透的复杂事情,实际上只需通过group_by ()分组,然后把你要对一组数据做的操作进行实现;再比如,用across ()同时操作多列,实际上只需把对一列数据要做的操作进行实现。这就是数据分解的操作思维,这些函数会帮你“分解+分别操作+合并结果”,你只需要关心分别操作的部分,它就变成一件简单的事情。
张教授特意强调,读者最好按顺序阅读,这样才能彻底地更新 R 知识。在编程时也要避免R基础库与Tidyverse 混用,因为二者在写 R 代码上不是一个思维,强行搭在一起处处透着别扭,事倍功半。
这些人,必读本书!
R语言自诞生至今已经40余年。虽然源自国外,但中国学者也钻研出了一套更适应本土的学习方法,把最新、最全的R语言知识融入其中。
在张教授看来,下面这些人最有必要学习本书,书中内容也特别贴合他们所需:
▮0基础:没有 R 语言基础但想要系统地学习 R 语言编程,特别是想要学习新兴 R 技术的人。
▮技术升级:具备一定的 R 语言基础,想升级 R 语言编程技术的人。
▮培养思维:想要理解编程思想,锻炼向量化编程思维、函数式编程思维,以及想要真正掌握数据思维的人。
▮特定从业者:想要以 R 语言为工具,从事统计分析、数据挖掘、机器学习工作的人,特别是想学习使用机器学习包(tidymodels 和 mlr3verse)的人。
▮高校师生:高校里对 R 语言及相关课程有需求的师生及科研人员,特别是将来想要在时间序列、金融、空间数据分析、文本挖掘等领域使用 fpp3、modeltime、tidyquant、sf、quanteda 等包的人。
如果你恰好是以上这几类读者,小异强烈建议你入手本书。无论你是上手一门新语言,还是温故知新、精准进阶,就从现在开始学习吧!你和R编程高手之间只差这本书!
文案:老王sai 编辑:fine. 审校:桐希、罗玉淇、胡俊英
参考来源:
1.张教授高校主页介绍
2.《R语言编程—基于tidyverse》
3.张教授百度百科
4.张教授知乎主页
你是怎么接触到R语言的?
在留言区参与互动,并点击在看和转发活动到朋友圈,我们将选5名读者各获得该图书1本,截止时间2月22日。
微信扫码关注该文公众号作者