R语言 删除列名中特殊字符后的所有字符

11dmarpk  于 2023-04-03  发布在  其他
关注(0)|答案(2)|浏览(374)

我有一个数据集,我已经导入到R,但需要摆脱所有的列名后“(”。我已经尝试了string.split(), sub(), and grepl()函数,但没有成功。任何和所有的帮助将不胜感激!
我希望以下内容变成这样:
水果=〉水果
蔬菜(很少)=〉蔬菜
面包屑=〉面包屑
奶酪(切达干酪)=〉奶酪
酸奶(原味%)=〉酸奶

92dk7w1h

92dk7w1h1#

使用碱基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"

您也可以使用tidyverse包中的stringr

library(stringr)
items_stringr <- str_trim(str_extract(items, '[^(]*'))

> items_stringr
[1] "Fruit"        "Vegetables"   "Bread Crumbs" "Cheese"       "Yogurt"

trimwsstr_trim将从项中删除尾随和前导空格。

zsohkypk

zsohkypk2#

使用正则表达式或正则表达式
类似物:/(.+)/g
把找到的东西都拿走

相关问题