首页

文章

R语言之—字符串处理函数

发布网友 发布时间:2022-04-19 09:56

我来回答

1个回答

热心网友 时间:2023-08-26 14:27

R语言之—字符串处理函数
nchar
取字符数量的函数
length与nchar不同,length是取向量的长度
# nchar表示字符串中的字符的个数
nchar("abcd")
[1] 4

# length表示向量中元素的个数
length("abcd")
[1] 1
length(c("hello", "world"))
[1] 2
chartr

字符替换

chartr(old="a", new="c", x="a123")
[1] "c123"

chartr(old="a", new="A", x="data")
[1] "dAtA"
paste和paste0

字符串粘合函数
paste在不指定分割符的情况下,默认分割符是空格
paste0在不指定分割符的情况下,默认分割符是空

# 默认以空格隔开
paste("Hello","world")
[1] "Hello world"

# 没有空格
paste0("Hello","world")
[1] "Helloworld"

# 指定分割符
paste("abc", "efg", "hijk", sep = "-")
[1] "abc-efg-hijk"

# 分别对向量的每一个元素进行连接
paste0("A", 1:6, sep = "")
[1] "A1" "A2" "A3" "A4" "A5" "A6"

# collapse参数:每一个元素操作之后,再把向量的每一个元素进行连接
paste0("A", 1:6, sep = "",collapse = "-")
[1] "A1-A2-A3-A4-A5-A6"
substr

字符串截取函数

substr(x = "hello", start = 1, stop = 2)
[1] "he"
strsplit

字符串的分割函数,可以指定分割符,生成一个list

strsplit("abc", split = "")
[[1]]
[1] "a" "b" "c"

如果要对一个向量使用该函数,需要注意。

# 分割向量的每一个元素,并取分割后的第一个元素
unlist(lapply(X = c("abc", "bcd", "dfafadf"), FUN = function(x) {return(strsplit(x, split = "")[[1]][1])}))
[1] "a" "b" "d"
gsub和sub

字符串替换
gsub替换匹配到的全部
sub 替换匹配到的第一个

# 将b替换为B
gsub(pattern = "b", replacement = "B", x = "baby")
[1] "BaBy"

gsub(pattern = "b", replacement = "B", x = c("abcb", "boy", "baby"))
[1] "aBcB" "Boy" "BaBy"

# 只替换第一个b
sub(pattern = "b", replacement = "B", x = "baby")
[1] "Baby"

sub(pattern = "b", replacement = "B", x = c("abcb", "baby"))
[1] "aBcb" "Baby"

grep和grepl

字符串匹配
grep函数返回的是索引值
grepl函数返回的是逻辑值

# 返回匹配到的元素的索引
grep(pattern = "boy", x = c("abcb", "boy", "baby"))
[1] 2

# 返回逻辑值
grepl(pattern = "boy", x = c("abcb", "boy", "baby"))
[1] FALSE TRUE FALSE
match && pmatch &&charmatch

1、match
Usage
match(x, table, nomatch = NA_integer_, incomparables = NULL)
x %in% table

参数:
x: vector or NULL: the values to be matched. Long vectors are supported.

table : vector or NULL: the values to be matched against. Long vectors are not supported. (被匹配的值)

nomatch: the value to be returned in the case when no match is found. Note that it is coerced to integer. (没有match上的返回的值)

incomparables : a vector of values that cannot be matched. Any value in x matching a value in this vector is assigned the nomatch value. For historical reasons, FALSE is equivalent to NULL. (不同来匹配的值)

match函数类似与 %in%,不同的是match返回的是索引,而%in%返回的是逻辑值。
ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 安徽省徽商集团有限公司经营理念 2019哈尔滨煤气费怎么有税? 快手删除的作品如何恢复 体育理念体育理念 有关体育的格言和理念 什么是体育理念 万里挑一算彩礼还是见面礼 绿萝扦插多少天后发芽 绿萝扦插多久发芽 扦插绿萝多久发芽 炖牛排骨的做法和配料 网络诈骗定罪标准揭秘 “流水不争先”是什么意思? mc中钻石装备怎么做 为什么我的MC里的钻石块是这样的?我想要那种。是不是版本的问题?如果是... 带“偷儿”的诗句 “君不见巴丘古城如培塿”的出处是哪里 带“奈何”的诗句大全(229句) 里翁行()拼音版、注音及读音 带“不虑”的诗句 “鲁肃当年万人守”的出处是哪里 无尘防尘棚 进出口报关流程,越详细越好。谢谢大家指教。 双线桥不是看化合价升多少就标多少的吗?为什么CL2+2KI=2KCL+I2中I失... 出师表高锰酸钾有画面了吗 2021年幼儿园新学期致家长一封信 电脑屏幕一条黑线怎么办? 销售代理商销售代理商的特点 商业代理商业代理的特征 如何看微信有没有开通微众银行 为什么微众没有开户 微众银行怎么开户 微众银行APP开户流程是什么? 唐古拉山海拔唐古拉山海拔是多少 怎么看待取消跳广场舞的人的退休金 如何选购新鲜的蓝田水柿? 恭城水柿柿树作用 创维洗衣机使用教程 创维全自动洗衣机怎么使用 自动开门器 狗羊属相婚姻相配吗 3岁的小孩不会说话怎么办 3岁孩子不会说话,应该挂什么科? 3岁小孩不会说话正常吗 鹿茸炖乌鸡怎么做? 新型冠状肺炎吃什么药可以预防 冰箱上电后一直响 食品生产许可证编号开头为“ G”。 手机微信怎样定时发消息 微信有没定时发送功能 怎样可以设置定时发送微信信息 芯片是我国科技的软肋,台积电若不给麒麟处理器代工,该怎么办? PMIC芯片上市公司有哪些? 江苏一盛荣芯片科技有限公司怎么样? 芯片制造关键设备再突破,我们离拥有自己的芯片还有多远? 股票A股中的科技板块,是指半导体芯片行业吗? 英特尔激进扩张强化美国芯片生产链,芯片业又会迎来巨震吗? 江苏中创芯片科技有限公司怎么样? 华为获芯片供货,若过度依赖国外的科技,对我国的芯片产业会有何影响? 国内芯片龙头公司有哪些? 中国的芯片制造遇到了哪些技术瓶颈呢? IBM已开发出全球首个2nm芯片,最终会带来哪些影响? 半导体芯片龙头股排名 哪个央企参股*半导体企业 202111月北上资金买的芯片科技股 恒基兆业一直积极践行“企业公民”责任,共迎美好未来,具体有哪些方面? 芯片制造是高科技的一种象征,中国芯片该如何发展? 芯片半导体是否为未来五年的科技风口? r语言 length和ncol的区别 r语言中对象的类型和长度分别通过函数什么得到 r语言中如何统计满足制定条件的行数? R语言怎么写函数 R语言里 len和length的区别 R语言自己定义一个函数.这个句子那里输错了……见图片 r语言中, == 和=,<-各自的区别 如何查看R语言函数源代码 R语言 seq函数 洋葱OMALL和天猫国际的区别是什么呀?哪个比较靠谱啊? r语言中怎样查看函数源代码 404 Not Found r语言 (argument if of length zero)求解答 r语言将变量中的缺失值赋值怎么写 R软件中x<-seq(-3,3,0.02)中三个数字代表什么意思 R语言regexpr中attr是什么意思啊 R语言“seq函数”是什么? 美拍视频怎么下载到电脑 美拍视频下载到电脑的方法 美拍网页版上的视频怎么下载到电脑上 美拍视频怎么下载保存到电脑?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com