如何在 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中将字符转换为数字

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注