我有这个示例 Dataframe (我的真实的 Dataframe 更大,这个 Dataframe 包括了我在大 Dataframe 中遇到的所有情况)
df = data.frame(ingridents = c('bread', 'BREAD', 'Bread orange juice',
'orange juice', 'Apple', 'apple bread, orange juice',
'bread Apple ORANGE JUICE'),
Frequency = c(10,3,5,4,2,3,1) )
在此df Dataframe 中,我们可以看到:
成分bread被写成bread、BREAD和Bread(单独或与其他答案一起)。2成分apple也是如此。
成分橙子juice有多种形式,在一组回答中有一个逗号,而在另一组回答中没有逗号。另外,我希望R能识别orange juice表达的整体,而不是单独的orange和juice。
目标是创建另一个包含这3个成分及其频率的 Dataframe ,如下所示:
ingridents Frequency
1 BREAD 22
2 ORANGE JUICE 13
3 APPLE 6
我怎样才能在R上编写一个算法,使他能够识别出每个React的总频率(无论它是大写字母还是小写字母,或者它是由两个词组成的表达式,如橙子)?
1条答案
按热度按时间px9o7tmv1#
下面是一种方法。首先,我们要做一些字符串预处理(例如,所有字符串都是大写,去掉逗号,并连接juice),然后按空格拆分并求和:
输出量: