R语言 | 进阶字符串的处理

news2024/11/25 22:27:21

目录

一、语句的分割

 二、修改字符串的大小写

 三、unique()函数的使用

 四、字符串的连接

4.1 使用paste()函数常见的失败案例1

4.2 使用paste()函数常见的失败案例2

4.3 字符串的成功连接与collapse参数

4.4 再谈paste()函数

4.5 扑克牌向量有趣的应用

五、字符串数据的顺序

六、查找字符串的内容

6.1 使用索引值搜索

​6.2 使用grep()函数搜索

七、字符串内容的更改

​编辑 八、正则表达式

8.1 搜索具有可选择性

8.2 搜索分类字符串

8.3 搜索部分字符可重复的字符串


一、语句的分割

在使用R语言时,常常需要将一段句子拆成单词,此时可以使用strsplit()函数。

 二、修改字符串的大小写

toupper():这个函数可以将字符串改成大写。

tolower():这个函数可以将字符串改成小写。

 三、unique()函数的使用

这个函数主要是让向量内容没有重复地出现。unique()函数可以让所有元素内容不重复出现。

 四、字符串的连接

4.1 使用paste()函数常见的失败案例1

上述实例使用paste()函数失败,最主要的原因是paste()函数内有c()函数,字符串经过c()函数处理后就会形成一个字符串向量。

4.2 使用paste()函数常见的失败案例2

 与上一个案例失败的原因相同。

4.3 字符串的成功连接与collapse参数

若是想用paste()函数成功将字符串向量内的字符串连接,需加上collapse参数。假设字符串是使用空格连接,则在paste()函数加上collapse=""参数即可。

将collapse参数设为NULL,与不加上此参数的结果相同。其实collapse参数除了NULL外,可以是任何其他字符,这个字符将是连接各个单字符的字符。

4.4 再谈paste()函数

其实paste()函数的主要目的是将两个或多个向量连接。

在连接的向量中,每个元素间以空格分开,如果我们不想让元素间有空格,可以在paste()函数内加上seq=" "参数。

 如果要连接的两个向量的长度(元素个数)不相同,R语言会使用重复机制,让较短的向量重复,直至与较长向量的长度相等。

4.5 扑克牌向量有趣的应用

五、字符串数据的顺序

sort()函数会为字符串向量的元素排序,默认是从小排到大,至于元素本身则不做排序。另外,decreasing参数默认是FALSE,如果设为TRUE,则排序是按由大排到小。

六、查找字符串的内容

6.1 使用索引值搜索

如果我们知道所要查找的字符串的索引值,那么可以使用substr()函数查找字符串。

6.2 使用grep()函数搜索

grep()函数是一个查找功能非常强大的函数。如果你去图书馆想找一本书,只知道Word 2013的书,却不知道完整书名,那么只输入“Word 2013”,系统即可搜索。这个函数的基本使用格式如下所示:

grep(pattern,x)

pattern:代表搜索的目标内容。

x:是字符串向量。

 如果在搜索时,找不到所搜索的内容,R语言将响应“character(0)”,表示是空的向量。

七、字符串内容的更改

sub()函数可以对搜索的字符串内容执行更改,这个函数的使用格式如下:

sub(pattern,replacement,x)

pattern:要搜索的字符串。

replacement:将要取代原字符串的字符串。

x:字符串向量。

 八、正则表达式

8.1 搜索具有可选择性

搜索具有可选择性,相当于具有or的特性,它的R语言语法是使用"|"符号,这个符号与"\"在同一个键盘按键上。

8.2 搜索分类字符串

可以使用"( )"符号搭配"|"符号,将所搜索的字符串分类。

8.3 搜索部分字符可重复的字符串

在搜索中可以添加"*"代表出现0次或多次,添加"+"代表出现1次或多次。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/478037.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue前端开发100问(持续更新)

1.export default的作用是 export主要用于对外输出本模块变量的接口,一个文件就可以被理解为一个模块。export就是导出。 import就是在一个模块中加载另一个含有export接口的模块, import就是导入。 2.什么样的内容需要放在export default里面&#xf…

mybatis使用(简单易上手)

mybatis使用 一、mybatis介绍1、mybatis是什么2、mybatis支持的数据库3、~~mybatis插件机制~~ 二、springboot集成mybatis1、引入依赖2、配置mybatis 三、使用mybatis1、注解方式使用mybatis2、XML文件方式 一、mybatis介绍 1、mybatis是什么 MyBatis是一个开源的Java持久层框…

第十七章 预制件prefab(下)

本章节我们来讲解如何编辑预制体文件。这里介绍三种打开编辑预制件的方式。第一就是通过预制件的实例游戏对象的Inspector检视面板上面的预制件“打开”按钮。 第二就是在Project工程面板中选中预制件文件(Cube.prefab),然后在Inspector检视面…

山东专升本计算机第八章-多媒体技术基础

多媒体技术基础 多媒体技术 考点 7 图形/图像处理软件 图形/图像文件格式 • BMP • windows系统下的标准位图格式 • 未经压缩 • JPEG(联合图像专家组) • 有损压缩格式,色数量高达24位,广泛应用于Internet上的主页或图片…

excel实战小测第四

【项目背景】 本项目为某招聘网站部分招聘信息,要求对“数据分析师”岗位进行招聘需求分析,通过对城市、行业、学历要求、薪资待遇等不同方向进行相关性分析,加深对数据分析行业的了解。 结合企业真实招聘信息,可以帮助有意转向数…

【艾特淘】淘宝“客服3分钟响应率”考核调整

淘宝商家“客服3分钟响应率”考核调整,还不知道的商家赶紧来看看,具体都有哪些变化哦~ 一、考核范围 考核范围对象为店铺正常状态,达到一定经营模式的淘宝卖家。 此对象定义为:卖家的商家层级达到5以上,同时还将考虑…

C++实现二叉搜索树

文章目录 前言1.二叉树搜索树的相关介绍2.二叉搜索树的实现1.二叉搜索树插入数据的实现2.二叉搜索树的查找实现3.二叉搜索树的删除实现4.构造函数和析构函数以及赋值重载的实现 3.二叉搜索树的应用1.将之前的K模型二叉搜索树改造成KV模型2.代码演示 4.二叉搜索树的性能分析 前言…

本地Linux服务器安装宝塔面板,并公网远程登录【内网穿透】

文章目录 前言1. 安装宝塔2. 安装cpolar内网穿透3. 远程访问宝塔4. 固定http地址5. 配置二级子域名6. 测试访问二级子域名 前言 宝塔面板作为建站运维工具,它支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能,可提高运维效率。…

人工智能导论:模型与算法,附录实验三:线性回归模型

本人研一,简单记录下上课的大作业,如果你不会自己写,相信你有缘能找到这篇博客 线性回归模型 1.实验内容 图像是一种非常常见的信息载体,但是在图像的获取、传输、存储过程中可能由于各种原因使得图像受到噪声的影响。如何去除…

程序员如何通过创作图文项目实现自己的代码价值

本文阅读适合人群: 1.程序员 2.图文赛道创业者 项目背景: 毫无疑问,这是一个优质内容的时代,从某种意义上说,优质内容Money。优质内容的形式包含很多,在头条的定义中包括:纯文字(…

存储资源调优技术——SmartTier智能分级技术、SmartQoS智能服务质量控制技术

目录 SmartTier智能分级技术 基本概述 工作原理 实现SmartThier数据迁移的三个阶段 应用场景 SmartQoS智能服务质量控制 基本概念 两种关键技术 应用场景 SmartTier智能分级技术 基本概述 自动将不同活跃的数据和不同特点的存储介质动态匹配,提高性能。 NL…

ETL工具 - Kettle 转换算子介绍

一、Kettle 转换算子 上篇文章对 Kettle 中的输入输出算子进行了介绍,本篇文章继续对转换算子进行讲解。 下面是上篇文章的地址: ETL工具 - Kettle 输入输出算子介绍 转换是ETL里面的T(Transform),主要做数据转换&am…

开放式基金净值估算数据 API 数据接口

开放式基金净值估算数据 API 数据接口 全量基金数据,实时数据,所有基金数据。 1. 产品功能 返回实时开放式基金净值估值可定义所有基金估值数据;多个基金属性值返回;多维指标,一次查询毫秒级返回;数据持续…

领域驱动设计事件驱动框架命令查询责任分离测试驱动开发

领域驱动设计: DDD 事件驱动框架: Event Driven Architecture 命令查询责任分离: CQRS(Command Query Responsibility Segregation) 测试驱动开发: TDD 先睹为快:架构图 入口:entrypoint 入口是系统外部客户访问系统内部的端口。常见的入口如http, …

算法刷题|647.回文子串、516.最长回文子序列

回文子串 题目:给你一个字符串 s ,请你统计并返回这个字符串中 回文子串 的数目。 回文字符串 是正着读和倒过来读一样的字符串。 子字符串 是字符串中的由连续字符组成的一个序列。 具有不同开始位置或结束位置的子串,即使是由相同的字符…

【redis】redis分布式锁(三)自动续期

系列文章目录 【redis】redis分布式锁(一)手写分布式锁1.0~6.0 【redis】redis分布式锁(二)可重入锁设计模式 文章目录 系列文章目录前言一、CAPredis集群 APZooKeeper集群 CP 数据一致性Eureak集群 APnacos集群 AP 二、lua脚本脚…

1 认识仿真工具Packet Tracer【实验】【计算机网络】

1 认识仿真工具Packet Tracer【实验】【计算机网络】 前言推荐1 认识仿真工具Packet Tracer1.1账号注册与Packet Tracer软件下载1.1.1 下载1.1.2 安装 1.2 Packet Tracer界面简介1.2.1 总述1.2.2 详细 1.3网络拓扑构建与设备模块添加1.3.1如何往工作区中添加设备1.3.2添加连线1…

【计算机网络】1.1——因特网概述

因特网概述(了解) 网络、互联网和因特网 网络由若干结点和连接这些结点的链路组成 多个网络还可以通过路由器互连起来,互联网是"网络的网络“ internet 和 Internet internet(互联网或互连网)是通用名词 泛指…

Java 基础入门篇(四)——— 方法的重载与参数传递机制

文章目录 一、方法的定义二、方法的参数传递机制 ★2.1 基本类型的参数传递2.2 引用类型的参数传递 三、方法重载 一、方法的定义 方法的作用:封装一段代码的语法结构,可以被重复调用,以此提高代码的复用性,提高开发效率&#xf…

操作系统之线程

线程 一、产生原因 最开始的并发,只能更具切换进程的方式去交替执行进程来宏观上并发,但是切换进程需要切换执行进程的环境,有很大的系统开销,所以产生了线程,让其可以不用频繁的切换进程,使得线程成为CPU…