相当新的R并且使用该string_count函数来检测多个未知的单词并且包含在单独的向量中.
现在,我知道如何使用以下代码检测单个模式实例:
str_count(mydf$string, "Apples")
Run Code Online (Sandbox Code Playgroud)
我想要做的是从一个矢量中检测多个单词(例如"苹果","梨子","橙子"等),该矢量本身是从另一个数据帧创建的(例如通过使用Uniques<-unique(mydf1$words)).
这里的关键是,出现的单词mydf1$words完全取决于首先上传到R的数据,因为这将从数据集更改为数据集.
答案可能很简单,但对于我的生活,我似乎无法解决它!
你的意思str_count是stringr包中的函数吗?
如果是这样,它使用正则表达式,并且在正则表达式的模式中,|字符表示"或",因此str_count(mydf$string, 'apple|pear')将计算"apple"或"pear"的出现次数以给出总计数.带有|字符的字符串可以构造paste,尝试:
str_count(mydf$string, paste(Uniques, collapse='|'))
Run Code Online (Sandbox Code Playgroud)
您可以paste通过运行该部分代码来查看构造的字符串.请注意,如果构造具有许多选项的模式,则它可能运行得非常慢.另一种选择是将第一个字符串拆分为单个单词,并使用%in%运算符将单词向量与选项向量进行比较(然后计算TRUE).