stringr2
时间:2022-07-25
本文章向大家介绍stringr2,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
stringr2
sunqi
2020/8/13
概述
str_detect:用来匹配字符中的字母,返回布尔值 str_count():匹配字符,返回匹配的个数
正文
rm(list=ls())
library(stringr)
x <- c("sunqi", "wanglong", "lisi")
str_detect(x, "i")
## [1] TRUE FALSE TRUE
# str_count():匹配字符,返回匹配的个数
str_count(x,"i")
## [1] 1 0 2
# 返回位置str_count
str_view_all(x, "qi")
- sunqi
- wanglong
- lisi
# 提取匹配内容str_extract
str_extract(c("sunqi zhangsan sunlia wangwu"),pattern ="sun|zhang")
## [1] "sun"
# str_extract_all返回全部字符
str_extract_all(c("sunqi zhangsan lisi wangwu"),pattern ="sun|zhang")
## [[1]]
## [1] "sun" "zhang"
# 替换第一个匹配值
str_replace(x, "[sn]", "-")
## [1] "-unqi" "wa-glong" "li-i"
# 替换所有值
str_replace_all(x, "[sn]", "-")
## [1] "-u-qi" "wa-glo-g" "li-i"
# 拆分字符串
x <- "i like apple and banana"
# 返回为一个个单词
str_split(x, " ")
## [[1]]
## [1] "i" "like" "apple" "and" "banana"
备注:举个例子,暂时不对stringr更新
综合例子
library(tidyr)
data <- tibble(
x = c("1234", "B246", "217C", "2357f", "21WD4")
)
str_match_all(x, "\d")
## [[1]]
## [,1]
# 求tibble中每个单元格中数字的和
library(tidyverse)
data %>%
# 匹配字符中的所有数字,返回列表
mutate(num = str_match_all(x, "\d")) %>%
# 将返回的列表还原为数据框
unnest(num) %>%
# 对提取的的数字转换为数字
mutate_at(vars(num), as.numeric) %>%
# 按照x分组计算和
group_by(x) %>%
#求和
summarise(sum = sum(num))
## # A tibble: 5 x 2
## x sum
## <chr> <dbl>
## 1 1234 10
## 2 217C 10
## 3 21WD4 7
## 4 2357f 17
## 5 B246 12
结束语
随着数据量越来越大,R语言对于内存的需求也越来越大,好像SAS是基于硬盘数据运算的。另外stringr不打算更新了,用不到。
love&peace
- python中的小魔法(一)
- 由问题入手,步步爬出Python中赋值与拷贝的坑
- python爬取链家租房之获得每一页的房屋信息地址(持续更新)
- python使用正则表达式
- python在租房过程中的应用
- python爬虫反爬取---设置IP代理自动变换requests.get()中proxy的IP
- 【译】TensorFlow实现Batch Normalization
- 关于Python语言规范你需要知道的一些小tips
- R语言可视化——REmap(路径图)
- python面向对象
- 字符串hash入门
- R语言数据处理——数据合并与追加
- python爬取链家租房之获取房屋页面的详细信息(房名,地址,房价,面积,url)
- 信用卡“坏账”客户分析(二)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Vim中查找替换及正则表达式的使用详解
- CentOS 7下部署php7.1和开启MySQL扩展的方法教程
- Ubuntu系统下用Crontab命令定时执行PHP文件详解
- CentOS7 LNMP+phpmyadmin环境搭建 第三篇phpmyadmin安装
- Linux有限状态机FSM的理解与实现
- Linux下浅谈crond与crontab的命令用法
- centos 7系统下安装Jenkins的步骤详解
- linux tomcat配置https的方法
- Linux 中firewall的使用方法总结
- CentOS 7 安装vsftpd 服务器的具体操作步骤
- 详细介绍通过配置Apache实现404页面替换
- bug分支和feature分支_动力节点Java学院整理
- Linux下Python脚本自启动与定时任务详解
- Linux服务器tomact 8.0启动慢的完美解决方法
- vim学习高级技巧之序列的生成方法详解