初学R语言需要用什么书比较好~怎么学R语言

Python08

初学R语言需要用什么书比较好~怎么学R语言,第1张

首先R是一种专业性很强的统计语言,如果想学得快一些的话,基本的统计学知识要懂,不然很多东西会掌握的比较慢。

掌握基本语法和操作,推荐国内的已经翻译的比如《R语言实战》《R语言编程艺术》,这个过程中最好结合一些小例子来做一些分析的东西。其他还有《R语言实例》《R语言核心技术手册》也都是很好的书!如果需要可视化的话,强烈不推荐学习R本身的作图系统,实在是太不友好了.....还是用ggplot2吧。

掌握了上面的,就可以深入一些了,如果是做数据分析和可视化,推荐《ggplot2:数据分析与图形艺术》,这个才是作图的神器啊.....如果是空间分析相关的,推荐《Applied Spatial Data Analysis with R》,这个如果可以的话看英文版,而且要有地学的一些知识背景,中文版翻译的太次了,尽量不要看。数据挖掘机器学习之类的,可以看看比如《数据挖掘与R语言》、《机器学习——实用案例解析》,不过我觉得这几本书没上面的那几本好,但是可以大概看看是咋回事,最好还是看看专门的相关书籍,熟悉各种算法和流程,到时候搜索R的package,照着文档和例子搞定,不是特别难。

最后,强烈推荐统计之都、R-bloggers,统计之都以及谢益辉、肖凯、刘思喆等人的博客(自行Google以及到上面的网站找链接),订阅一下,会很有帮助,RStudio是个很棒的IDE,用起来很爽,功能很强大。

总之,你可以从《R语言实战》开始出发吧!

首先声明,用R来处理字符串数据并不是一个很好的选择,还是推荐使用Perl或者Python等语言。不过R本身除了提供了一些常用的字符串处理函数,也对正则表达式有了一定的支持,具体各个函数的使用方法还是要参考R的帮助文档。sub()与gsub()使用正则表达式对字符串进行替换。grep()、regexpr()、gregexpr()都是用于正则表达式的匹配,只是返回的结果格式有些不同。几个函数的使用格式如下:grep(pattern, x, ignore.case = FALSE, extended = TRUE,perl = FALSE, value = FALSE, fixed = FALSE, useBytes = FALSE)regexpr(pattern, text, ignore.case = FALSE, extended = TRUE,perl = FALSE, fixed = FALSE, useBytes = FALSE)gregexpr(pattern, text, ignore.case = FALSE, extended = TRUE,perl = FALSE, fixed = FALSE, useBytes = FALSE)sub(pattern, replacement, x,ignore.case = FALSE, extended = TRUE, perl = FALSE,fixed = FALSE, useBytes = FALSE)gsub(pattern, replacement, x,ignore.case = FALSE, extended = TRUE, perl = FALSE,fixed = FALSE, useBytes = FALSE)其中参数pattern表示用于匹配的正则表达式模式;参数x和text表示用于搜索的字符串向量;参数ignore.case为FALSE时,表示模式匹配是对字母的大小写敏感;参数VALUE也是一个逻辑变量,若为FALSE,grep函数会返回一个由匹配元素所在的位置组成的向量,若为TRUE,则返回由匹配元素本身组成的向量;参数replacement只在函数sub和gsub中出现,用于进行替换,如果fixed=FALSE,可通过\1,...,\9来回溯引用匹配模式中由括号括起来的子表达式。如果参数perl=TRUE,还可以通过\U或\L将匹配字符转换成大写或小写。一些示例代码:>grep("[a-z]", letters)[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24[25] 25 26#参数value的使用>grep("[a-z]", letters,value=TRUE)[1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r"[19] "s" "t" "u" "v" "w" "x" "y" "z"#将字符串的首字母转换为大写>gsub("^(\\w)", "\\U\\1", "a test of capitalizing", perl=TRUE)[1] "A test of capitalizing"#将字符串中每个单词的首字母转换为大写>gsub("\\b(\\w)", "\\U\\1", "a test of capitalizing", perl=TRUE)[1] "A Test Of Capitalizing"#对电子邮件地址进行匹配为例,用一个正则表达式来匹配电子邮件地址是一项很常见的任务。>text<-c("[email protected]","[email protected]","[email protected]","[email protected]","[email protected]")>text[1] "[email protected]" "[email protected]" "[email protected]"[4] "[email protected]" "[email protected]">grep("(\\w+\\.)*\\w+@(\\w+\\.)+[a-zA-Z]+",text)[1] 1 3 5