在 R 中按分隔符拆分字符串
本文将讨论如何在 R 中通过分隔符分割字符串。
在 R 中使用 strsplit
按分隔符拆分字符串
strsplit
随 R 基础库一起提供,应该可以在大多数安装中使用而无需额外的包。strsplit
通过给定的分隔符将字符向量拆分为子字符串,该分隔符也提供了一个字符向量。该函数的第一个参数是要拆分的字符向量。在这种情况下,我们指定空格字符来分隔给定句子中的每个单词。请注意,输出是作为字符向量列表给出的。
library(dplyr)
library(stringr)
str <- "Lorem Ipsum is simply dummied text of the printing and typesetting industry."
strsplit(str, " ")
输出:
> strsplit(str, " ")
[[1]]
[1] "Lorem" "Ipsum" "is" "simply" "dummied" "text"
[7] "of" "the" "printing" "and" "typesetting" "industry."
在 R 中使用 str_split
按分隔符拆分字符串
或者,str_split
函数也可用于按分隔符拆分字符串。str_split
是 stringr
包的一部分。它的工作方式几乎与 strsplit
相同,除了 str_split
还采用正则表达式作为模式。在下面的例子中,我们只传递固定字符串进行匹配。请注意,该函数可以选择采用第三个参数,该参数表示要返回的子字符串的数量。
library(dplyr)
library(stringr)
str <- "Lorem Ipsum is simply dummied text of the printing and typesetting industry."
str_split(str, " ")
输出:
> str_split(str, " ")
[[1]]
[1] "Lorem" "Ipsum" "is" "simply" "dummied" "text"
[7] "of" "the" "printing" "and" "typesetting" "industry."
str_split
函数中的另一个可选参数是 simplify
,它排在第四位。默认情况下,此参数的值为 FALSE
,这会强制函数将子字符串作为字符向量列表返回。如果我们将 TRUE
分配给给定的参数,str_split
将返回一个字符矩阵。
library(dplyr)
library(stringr)
fruits <- c(
"apples and oranges and pears and bananas",
"pineapples and mangos and raspberries"
)
str_split(fruits, " and ")
str_split(fruits, " and ", simplify = TRUE)
输出:
> str_split(fruits, " and ")
[[1]]
[1] "apples" "oranges" "pears" "bananas"
[[2]]
[1] "pineapples" "mangos" "raspberries"
> str_split(fruits, " and ", simplify = TRUE)
[,1] [,2] [,3] [,4]
[1,] "apples" "oranges" "pears" "bananas"
[2,] "pineapples" "mangos" "raspberries" ""
相关文章
R 中具有多个条件的函数向量化
发布时间:2023/03/21 浏览次数:64 分类:编程语言
-
一项常见的数据分析任务是根据同一行的其他列使用一个或多个条件创建或更新数据框列。 如果我们尝试使用 if 语句来执行此操作,则只会使用第一行来测试条件,并且会根据该行更
在 R 中读取 xlsx 文件
发布时间:2023/03/21 浏览次数:66 分类:编程语言
-
在这篇文章中,你将会了解到两个在 R 中读取 xlsx 文件的最完整和最容易使用的库:readxl 和 openxlsx。