字符串的处理与正则表达式关系密切,参考: R语言中的正则表达式
生成字符串
⚠️注意nchar函数与length函数的区别,如果用length(x),返回的是2(有两个字符串),但可以使用str_length()函数
toupper函数:小写变大写
tolower函数:大写变小写
paste函数
paste0函数 (0代表粘贴在一起后没有间隔)
若对paste函数设置sep="",效果和paste0一样
拆分后生成列表
处理比较复杂的字符串
生成向量
grep()函数提取法国的元素
grepl()函数返回的是TRUE或FALSE
✨练习:提取如上向量中有明确收集年份的序列。
(思路:找出不明确年份的序列(含s或S的),然后取非。)
gsub()函数
gsub函数可以替换它找到的所有的字符
sub函数只能替换它找到的第一个字符
功能非常类似
以regexpr()为例:
以agrep()为例
英式英语和美式英语的写法可以自动被识别
stringr和stringi功能类似,stringi功能更强大,但更依赖于正则表达式的使用。
str_split()⚠️
❗️: str_detect()和ifelse()联合使用 可以根据字符串中是否存在某字符将字符串分为两类,常用于GEO等分析时根据样本名判断该样本是正常样本还是病例(如肿瘤)样本。
用法:
stri_cmp_eq 判断两个字符串是否完全一样
stri_cmp_neq 判断两个字符串是否不一样
向量化的从前面那个里面寻找后面那个,找到了就返回TRUE,找不到就返回FALSE
\ | ( ) [ ] ^ $ +
数量词: + {m} {m,n} {m,}
stringr包里面的函数主要分为 6大类 ,包括:
接下来,我们将逐个演示这些函数的使用方法。
str_detect 可以检测pattern是否包括在某个字符串中,并返回TRUE和FALSE
str_count 检测pattern是否包括在某个字符串中的数目
str_which 告诉pattern的索引位置
str_locate 和 str_locate_all 返回pattern的开始和终止位置;
区别是 str_locate 只返回字符串里面的 首个匹配 到的pattern;
str_locate_all 返回字符串里面的 所有匹配 到的pattern;
str_view 和 str_view_all 函数都可以以可视化的方式,返回字符串中匹配到的pattern;
str_sub 在给定起始和终止参数的基础上对字符串进行截取或者替换
str_subset 返回pattern所在的字符串
str_extract 函数返回每个字符串中首个匹配到的pattern
str_extract_all 函数返回每个字符串中所有匹配到的pattern str_extract_all 函数中 simplify 默认为False,默认返回list;当 simplify 为True,则返回matrix
str_match 函数返回每个字符串中首个匹配到的pattern,以matrix的形式呈现
str_match_all 函数返回每个字符串中所有匹配到的pattern,以list的形式呈现
str_length 函数可以计算字符串的长度
str_pad 函数可以填充字符
str_trim 函数去除字符串的空白部分
str_squish 函数作用和 str_trim 函数作用一致,但除了去除字符串前、后的空格,它还可以去除字符串中间出现的重复的空格。这一点上, str_trim 函数无法办到。
str_trunc 函数可以把字符串切割到指定长度
str_replace 函数可以替换pattern为新的字符,仅限于第一个匹配到的
str_replace_all 函数可以替换所有匹配到的pattern
str_replace_na 可以将缺失值替换成‘NA’,这样naomit函数就无法将缺失值删除了
在 str_replace 和 str_replace_all 函数中,replacement可以用\1, \2中表示模式中的捕获
str_to_upper 函数可以将小写字母转成大写字母
str_to_lower 函数可以将大写字母转成小写字母
str_remove 可以移除字符串中首个匹配到的pattern
str_remove_all 可以移除字符串中所有匹配到的pattern
str_c 函数可以拼接多个字符串
str_dup 函数可以复制字符串
str_split 按照pattern分割字符串
str_split_fixed 按照pattern将字符串分割成指定个数
str_order 函数和 str_sort 函数都可以对字符串进行排序,两者之前的区别在于 前者返回排序后的索引(下标),而后者返回排序后的实际值 。
R 正则表达式
R语言与正则表达式
原来是它!正则表达式揪出生信分析中没有报错的内鬼错误
R语言教程
R for Data Science
估计你数组写错了 r={"a1:1","a2:2"} 这才是正确的字符数组
取r[1]; 得到 a2 : 2
在利用s = spilt(":")
取s[1];就会得到 2
如果不理解,我可以写个例子
stringr字符处理 - (jianshucom)
dplyr表格 *** 作 - (jianshucom)
1、字符串向量特征匹配
2、字符串特征匹配(取子集)
3、字符串的替换修改
4、字符串格式相关
5、字符串拼接与拆分
>
以上就是关于字符串的处理(初步处理+stringr&stringi)全部的内容,包括:字符串的处理(初步处理+stringr&stringi)、正则表达式(stringr包)、java 如何简单快速的 提取到 string r={"a1":1,"a2",2}中的a2的值;等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)