gpt4 book ai didi

r - 根据R中的三列计算频率

转载 作者:行者123 更新时间:2023-12-02 05:59:36 24 4
gpt4 key购买 nike

这是我的数据框

id    ingredient1    ingredient2    ingredient3
1 apple milk cheese
5 pear apple
3 lettuces tomato salt
12 ribs tomato salt
20 cheese milk tomato
... ...

这里有200多行我知道如何通过表格获取频率。但是在这里,我真的不知道该怎么做。这是我想要的理想输出:

var     freq
apple 2
milk 2
cheese 2
pear 1
lettuces 1
tomato 3
salt 2
ribs 1
... ...

最佳答案

假设您想要所有“成分”列的总频率,我们通过删除第一列 (df1[-1]) 对数据集进行子集化,然后unlist 生成一个vector 并使用table 获取唯一元素的频率。如果您需要 data.frame 输出,我们可以用 as.data.frame 包装它。

res <- as.data.frame(table(unlist(df1[-1])))

我在成分列中发现了一些空白元素''。如果你想删除它,

subset(res, Var1!='')
# Var1 Freq
#2 apple 2
#3 cheese 2
#4 lettuces 1
#5 milk 2
#6 pear 1
#7 ribs 1
#8 salt 2
#9 tomato 3

关于r - 根据R中的三列计算频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31701607/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com