如何在R中要求和排除数据帧中的特定术语?
我有三个数据帧:如何在R中要求和排除数据帧中的特定术语?,r,R,我有三个数据帧: 单词和短语的输入集(“输入”) require一组单词(“require”) 一组排除词(“排除”) 它们都是数据帧 输入 kw 1 baseball 2 football 3 tennis 4 basketball 5 basket ball 6 volleyball 7 base ball 8 women's golf 9 men's golf 10 golfing 要求 kw 1 ball 2 golf kw 1 basket 2 volley
kw
1 baseball
2 football
3 tennis
4 basketball
5 basket ball
6 volleyball
7 base ball
8 women's golf
9 men's golf
10 golfing
要求
kw
1 ball
2 golf
kw
1 basket
2 volley
排除
kw
1 ball
2 golf
kw
1 basket
2 volley
我希望输出为:
kw
1 baseball
2 football
3 base ball
4 women's golf
5 mens golf
6 golfing
我怎么用R写这个?当我使用grep时,我会一遍又一遍地重复代码。这应该很容易迭代。非常感谢您的帮助。您可以将两条grep语句组合在一起。比如说
subset(dd, grepl("ball|golf",kw) & !grepl("basket|volley", kw))
使用示例输入
dd<-read.table(text="kw
baseball
football
tennis
basketball
basket ball
volleyball
base ball
women's golf
men's golf
golfing", sep="\t", quote="", header=T)
谢谢你,弗利克先生。我正在从.csv文件中提取数据帧。如何将它们组合到grep语句中?我猜
粘贴(需要$kw,collapse=“|”)
。请注意,grep需要一个有效的正则表达式。不幸的是,它不起作用。当我键入:final=subset(input,grepl(粘贴(require$kw,collapse=“|”)和!grepl(粘贴(exclude$kw,collapse=“|”)时,我得到以下错误消息:grepl中的错误(粘贴(require$kw,collapse=“|”):缺少参数“x”,没有默认值您没有将kw
列传递给grepl
函数。你只通过了一个模式。仔细看看我的例子。一如既往地感谢Flick先生!