如何在 r 中使用 str_split(带有示例)
R 中stringr包的str_split()函数可用于将字符串拆分为多个部分。该函数使用以下语法:
str_split(字符串,模式)
金子:
- 字符串:字符向量
- 模式:要划分的模式
类似地,stringr 包中的str_split_fixed()函数可用于将字符串拆分为固定数量的块。该函数使用以下语法:
str_split_fixed(字符串,模式,n)
金子:
- 字符串:字符向量
- 模式:要划分的模式
- n:返回的件数
本教程提供了在以下数据框上使用每个函数的示例:
#create data frame df <- data. frame (team=c('andy & bob', 'carl & doug', 'eric & frank'), dots=c(14, 17, 19)) #view data frame df team points 1 andy & bob 14 2 carl & doug 17 3 eric & frank 19
示例 1:使用 str_split() 分割字符串
以下代码显示如何使用str_split()函数拆分“team”列中的字符串:
library (stringr) #split the string in the team column on " & " str_split(df$team, " & ") [[1]] [1] “andy” “bob” [[2]] [1] “carl” “doug” [[3]] [1] “eric” “frank”
结果是一个包含三个项目的列表,显示每个团队中各个球员的姓名。
示例 2:使用 str_split_fixed() 分割字符串
以下代码显示如何使用str_split_fixed()函数将“team”列中的字符串拆分为两个固定部分:
library (stringr)
#split the string in the team column on " & "
str_split_fixed(df$team, " & ", 2)
[,1] [,2]
[1,] “andy” “bob”
[2,] "carl" "doug"
[3,] "eric" "frank"
结果是一个两列三行的矩阵。
str_split_fixed()函数的一个有用应用是将生成的矩阵附加到数据帧的末尾。例如:
library (stringr)
#split the string in the team column and append resulting matrix to data frame
df[, 3:4] <- str_split_fixed(df$team, " & ", 2)
#view data frame
df
team points V3 V4
1 andy & bob 14 andy bob
2 carl & doug 17 carl doug
3 eric & frank 19 eric frank
标记为“V3”的列显示第一队球员的姓名,标记为“V4”的列显示第二队球员的姓名。
其他资源
如何在 R 中使用 str_replace
如何在 R 中执行部分字符串匹配
如何在 R 中将字符串转换为日期
如何在R中将字符转换为数字