11-24

一、tidyverse的简介

  1. tidyr
  2. dplyr
  3. stringr
  4. ggplot2

二、管道符号%>%

merge通常取交集

练习7.1

stringr的用法

 rm(list = ls())
if(!require(stringr))install.packages('stringr')
library(stringr) 

x <- "The birch canoe slid on the smooth planks."

x
###1.检测字符串长度
length(x)    #长度为1的向量,只有一个元素
str_length(x)   #有多少个字符

###2.字符串拆分与组合
str_split(x," ")  #以空格为分隔符,产生列表(两个中括号,注意下方的数据结构)
> class(str_split(x," "))
[1] "list"
> class(str_split(x," ")[[1]])
[1] "character"

#把拆分的字符串合并
x2 = str_split(x," ")[[1]]
x2
[1] "The"     "birch"   "canoe"   "slid"   
[5] "on"      "the"     "smooth"  "planks."
> str_c(x2,collapse = " ")
[1] "The birch canoe slid on the smooth planks."
> str_c(x2,1234,sep = "+")
[1] "The+1234"     "birch+1234"  
[3] "canoe+1234"   "slid+1234"   
[5] "on+1234"      "the+1234"    
[7] "smooth+1234"  "planks.+1234"

###3.提取字符串的一部分
str_sub(x,5,9)  #提取X这个字符的第五位到第九位,空格算进去
[1] "birch"
###4.大小写转换
> str_to_upper(x2)
[1] "THE"     "BIRCH"   "CANOE"   "SLID"   
[5] "ON"      "THE"     "SMOOTH"  "PLANKS."
> str_to_lower(x2)
[1] "the"     "birch"   "canoe"   "slid"   
[5] "on"      "the"     "smooth"  "planks."
> str_to_title(x2)
[1] "The"     "Birch"   "Canoe"   "Slid"   
[5] "On"      "The"     "Smooth"  "Planks."

###5.首字母字符串排序
> str_sort(x2)
[1] "birch"   "canoe"   "on"      "planks."
[5] "slid"    "smooth"  "the"     "The"  

###6.字符检测(重点)
> str_detect(x2,"h")  #对X2向量的每个元素进行检查是否有h,有=T
[1]  TRUE  TRUE FALSE FALSE FALSE  TRUE  TRUE
[8] FALSE

#可以用来给向量取子集 
> x2[str_detect(x2,"h")] #挑选出x2向量里含有h这个字符的元素
[1] "The"    "birch"  "the"    "smooth"
> str_starts(x2,"T") #是否以T为开头
[1]  TRUE FALSE FALSE FALSE FALSE FALSE FALSE
[8] FALSE
> str_ends(x2,"e")
[1]  TRUE FALSE  TRUE FALSE FALSE  TRUE FALSE
[8] FALSE
> str_detect(x2,"th")
[1] FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE
[8] FALSE


###与sum和mean连用,可以统计匹配的个数和比例
> c(28738,T,F) #T=1, F=0
[1] 28738     1     0
> sum(str_detect(x2,"th")) #逻辑值和SUM连用:统计TRUE的个数
[1] 2
> mean(str_detect(x2,"th"))#TRUE占总体百分之多少
[1] 0.25

###7.提取匹配到的字符串
> str_subset(x2,"h")
[1] "The"    "birch"  "the"    "smooth"
等同于
> x2[str_detect(x2,"h")] 

###8.字符计数
> str_count(x," ")
[1] 7
> str_count(x2,"o")
[1] 0 0 1 0 1 0 2 0

###9.字符串替换
> str_replace(x2,"o","A")  #默认只替换出现的第一个o
[1] "The"     "birch"   "canAe"   "slid"   
[5] "An"      "the"     "smAoth"  "planks."
> str_replace_all(x2,"o","A")
[1] "The"     "birch"   "canAe"   "slid"   
[5] "An"      "the"     "smAAth"  "planks."

###结合正则表达式更加强大

#练习6-2
#Bioinformatics is a new subject of genetic data collection,analysis and dissemination to the research community.
#1.将上面这句话作为一个长字符串,赋值给tmp
#2.拆分为一个由单词组成的向量,赋值给tmp2(注意标点符号)
#3.用函数返回这句话中有多少个单词。
#4.用函数返回这句话中每个单词由多少个字母组成。
#5.统计tmp2有多少个单词中含有字母"e"
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容