我有这个数据集,用于野餐时导致食源性疾病爆发的物品。 “生病”列中的是或否决定患者在野餐后是否生病。食物(苹果、香蕉、草莓、酸奶或三明治)后的是或否决定了患者是否吃了该特定食物。
patient sick apple banana strawberry yogurt sandwich
1: patient1 yes no no yes no no
2: patient2 yes yes no no yes no
3: patient3 no yes yes yes yes yes
4: patient4 yes no no yes yes no
5: patient5 no no no no yes no
6: patient6 no no no no no no
7: patient7 yes no no no yes yes
我使用 group_by() 和 summarise() 函数来创建一个总结,谁吃了食物生病了,谁吃了食物没有生病,谁没有吃食物生病了,谁没有'吃了食物,没有生病。
sick_apple <- picnic %>%
group_by(sick, apple) %>%
summarise(total=n())
sick_apple
这是该代码的输出。
# A tidytable: 4 × 3
# Groups: sick
sick apple total
<chr> <chr> <int>
1 no no 2
2 no yes 1
3 yes no 3
4 yes yes 1
如何提取每种食物的“是”“是”的值并将其放入列表中?换句话说,我如何计算每种食物(苹果、香蕉、草莓、酸奶或三明治)的这些计数,然后提取 sick=='yes' 和食物(苹果、香蕉、草莓、酸奶或三明治)的值)=='是'。
如果可能的话,我想要一张看起来像这样的表格,其中 B 列(食物老化和生病的频率)统计生病 ==“是”和特定食物 ===“是”的患者人数“.