我有一个导入到R中的数据集,但是需要删除“(”之后的列名称中的所有内容。我尝试了string.split(), sub(), and grepl()
函数,但没有成功。任何帮助将不胜感激!
我希望以下内容成为这个:
水果=>水果
蔬菜(很少)=>蔬菜
面包屑=>面包屑
奶酪(切达干酪)=>奶酪
酸奶(%)=>酸奶
答案 0 :(得分:0)
使用基数R:
items <- c('Fruit', 'Vegetables (Few)', 'Bread Crumbs', 'Cheese (Cheddar)', 'Yogurt (Plain%)')
items_simplified <- trimws(gsub('\\(.*', '', items))
> items_simplified
[1] "Fruit" "Vegetables" "Bread Crumbs" "Cheese" "Yogurt"
您还可以使用stringr
软件包中的tidyverse
:
library(stringr)
items_stringr <- str_trim(str_extract(items, '[^(]*'))
> items_stringr
[1] "Fruit" "Vegetables" "Bread Crumbs" "Cheese" "Yogurt"
trimws
和str_trim
修剪掉项目中尾随的空格。
答案 1 :(得分:-1)
使用正则表达式或正则表达式
例如:/(.+)/ g
并删除找到的所有内容