我感兴趣的是计算单词列表中列中唯一的匹配数.我想在数据帧中的一个新列中进行计数,以便每一行都有一个计数.

例如:

person_id <- c("001", "002", "003")
grocery_list <- c("apple orange orange kiwi", "eggs milk apple apple", "apple orange banana")

df <- data.frame(person_id, grocery_list)

fruit_list <- c("apple", "orange", "banana") 

The output would be:
person_id grocery_list                   fruit_count
001       apple orange orange kiwi       2
002       eggs milk apple apple          1
003       apple orange banana            3

推荐答案

这应该可以做到:

library(tidyverse)
person_id <- c("001", "002", "003")
grocery_list <- c("apple orange orange kiwi", "eggs milk apple apple", "apple orange banana")

df <- data.frame(person_id, grocery_list)

fruit_list <- c("apple", "orange", "banana") 


df %>% 
  rowwise() %>% 
  mutate(fruit_count = sum(str_detect(grocery_list, fruit_list)))
#> # A tibble: 3 × 3
#> # Rowwise: 
#>   person_id grocery_list             fruit_count
#>   <chr>     <chr>                          <int>
#> 1 001       apple orange orange kiwi           2
#> 2 002       eggs milk apple apple              1
#> 3 003       apple orange banana                3

reprex package(v2.0.1)于2022-06-03创建

R相关问答推荐

用dDeliverr用第二个表更新一个表

如何使用文本表达来子集数据

基于R中的GPS点用方向箭头替换点

检测(并替换)字符串中的数学符号

如何删除R中除某些特定名称外的所有字符串?

如何自定义Shapviz图?

R-更新面内部的栅格值

标识R中多个列中缺少的唯一值

传递ggplot2的变量作为函数参数—没有映射级别以正确填充美学

R Read.table函数无法对制表符分隔的数据正常工作

展开对数比例绘图的轴(添加填充)

用R ggplot2求上、下三角形中两个变量的矩阵热图

基于Key->Value数据帧的基因子集相关性提取

根据纬度和距离连接两个数据集

Conditional documentr::R中数据帧的summarize()

如何在AER::ivreg中指定仪器?

变异以按组从其他列创建具有最大和最小值的新列

如何合并不同列表中的数据文件,包括基于名称的部分匹配,而不是一对一等价

如何获取R chromote中的当前URL?

条形图中的条形图没有try 赋予它们的 colored颜色