如何在r中提取空格前的字符串


您可以使用以下方法提取 R 中空格前的字符串:

方法 1:使用 Base R 提取空格前的字符串

 gsub(“ .*$ ”, “”, my_string)

方法2:使用stringr包提取空格前的字符串

 library (stringr)

word(my_string, 1)

这两个示例都从名为my_string的字符串中提取第一个空格之前的字符串。

以下示例展示了如何在实践中使用以下数据框使用每种方法:

 #create data frame
df <- data. frame (athlete=c('A', 'B', 'C', 'D'),
                 distance=c('23.2 miles', '14 miles', '5 miles', '9.3 miles'))

#view data frame
df

  distance athlete
1 to 23.2 miles
2 B 14 miles
3 C 5 miles
4 D 9.3 miles

示例 1:使用 Base R 提取空格前的字符串

以下代码展示了如何提取数据框距离列中每个字符串中空格之前的字符串:

 #create new column that extracts string before space in distance column
df$distance_amount <- gsub( " .*$ ", "", df$distance) 

#view updated data frame
df

  athlete distance distance_amount
1 A 23.2 miles 23.2
2 B 14 miles 14
3 C 5 miles 5
4 D 9.3 miles 9.3

请注意,名为distance_amount的新列包含数据框距离列中字符串中空格之前的字符串。

相关R 中 gsub() 简介

示例 2:使用 stringr 包提取空格前的字符串

以下代码展示了如何使用 R 中stringr包的word()函数提取数据框距离列中每个字符串中空格之前的字符串:

 library (stringr)

#create new column that extracts string before space in distance column
df$distance_amount <- word(df$distance, 1)

#view updated data frame
df

  athlete distance distance_amount
1 A 23.2 miles 23.2
2 B 14 miles 14
3 C 5 miles 5
4 D 9.3 miles 9.3

请注意,名为distance_amount的新列包含数据框距离列中字符串中空格之前的字符串。

这对应于在基础 R 中使用gsub()函数的结果。

请注意, stringr包的word()函数从给定字符串中提取单词。

通过向该函数提供值1 ,我们可以提取字符串中找到的第一个单词,这相当于提取第一个空格之前的字符串。

其他资源

以下教程解释了如何在 R 中执行其他常见任务:

如何在R中提取特定字符后的字符串
如何在R中提取特定字符之间的字符串
如何从R中的字符串中删除字符
如何在R中查找字符串中的字符位置

添加评论

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