R语言:从数据思维到数据实战
上QQ阅读APP看书,第一时间看更新

1.3.2 学会使用搜索引擎

如果使用帮助文档不能很好地解决疑问,那么搜索引擎将是接下来的不二之选。以谷歌为例,它的搜索能力强大,定位精准,不仅可以完美捕捉R社区里的相关解答,还会搜寻出其他各类形式、各种来源的辅助学习材料,让我们有机会深入了解问题的来龙去脉,而不仅仅是获得一个答案。下面就以两个最常见的情景为例,来看看遇到“疑难杂症”时如何使用谷歌进行搜索。

picture

图1-37 QucikGR网站主页

1.遭遇bug

read.csv( )是一个可以用来读入csv格式数据的函数,它的基本用法是read.csv file header=TRUE ,其中参数file用来输入要读入的文件名,header用来告诉电脑是否把读入文件的第一行识别为变量名,而不是数据。

比如,你想读入一张存有“全国各省份与东西部地区对应数据”的表格,于是使用read.csv( ),结果却出现了这样的错误(见图1-38)。

picture

图1-38 read.csv( )运行错误示例

面对这样的错误,不妨直接求助谷歌。首先,把这个错误提示粘贴在搜索框内,前面加上R,很多时候,这样就会得到还不错的搜索结果(见图1-39)。

picture

图1-39 错误提示全文谷歌搜索结果

只看前几条返回结果,就可以知道出现错误的原因大概与中英文的编码有关。事实上,如果点开第一条链接,里面就有中英文编码的知识以及类似问题的解决办法,即改变整个文件的编码格式,也就是在read.csv函数中,将参数fileEncoding设置为能够读取汉语的编码方式,比如“GBK”,再一试,完美解决(见图1-40)。

picture

图1-40 read.csv( )运行正确示例

当然,如果提取出该错误信息的英文关键词,也可以同样搜索到相关档案(见图1- 41)。

picture

图1-41 关键词谷歌搜索结果

总的来说,在搜索结果中,排名靠前的网站往往都是前面介绍过的R社区,但又不局限于这些,我们可以一一翻看这些不同介绍来了解问题的全貌。

【友情提示】

在使用搜索引擎时能用英文查询就尽量用英文,毕竟很多领域,英文资料远比中文的丰富得多。比如,检索“探索性数据分析”,可以分别输入“探索性数据分析”和“Exploratory Data Analysis”,会得到如图1-42和图1-43的搜索结果。

picture

图1-42 中文谷歌搜索结果

picture

图1-43 英文谷歌搜索结果

从数量上比,中文返回200多万条记录,而英文返回1 200多万条记录;从质量上看,中文返回结果的前几页大多是零散的相关主题的介绍性文章,甚至是书籍链接,做了解用可以,但要深入学习恐怕就远远不够了,而英文返回的资料丰富得多,有很多课程链接,甚至前几个网页点进去都是可以系统学习这个主题的ebook,比如图1-44所展示的ebook示意图。

picture

图1-44 ebook示意图

2.想要寻找新功能

除了遇到bug时可以求助谷歌,当你想要寻找新功能、实现新方法,却不知从何着手时,谷歌也是一个绝好的帮手。举例来说,如果你手头有一个含大量数据的csv,但普通的read.csv( )函数太慢,影响效率,那么可以通过谷歌搜索看能否有办法加快读入数据的速度(见图1-45)。

picture

图1-45 谷歌搜索结果

从图1-45可以看出,排名靠前的搜索结果均来自R-bloggers,Stack Overflow,CRAN官网这类较权威的地方,它们提供了很多提高效率的方法。不妨打开其中的StackOverflow网站一探究竟。从图1-46可以看到,热心网友已经给出了全面专业的解答,不仅有R包,还有对应函数。

picture

图1-46 Stack Overflow网站解答