假设我有四个物体(a,b,c,d
),我让五个人根据它们的外观或其他因素对它们进行分类(类别1或类别2)。这些物体的标签由五个人提供,如下所示:
df <- data.frame(a = c(1,2,1,2,1), b=c(1,2,2,1,1), c= c(2,1,2,2,2), d=c(1,2,1,2,1))
以表格形式展示,
---------
a b c d
---------
1 1 2 1
2 2 1 2
1 2 2 1
2 1 2 2
1 1 2 1
----------
现在我想计算一组对象被赋予相同标签(1或2)的次数的百分比。例如,a、b和d被5个人中的3个人赋予了相同的标签。因此,其百分比为3/5(=60%)。而a和d被所有人赋予相同的标签,所以它的百分比为5/5(=100%)。
我可以手动计算这个统计量,但在我的原始数据集中,有50个这样的对象,30个人和4个标签(1、2、3和4)。如何自动计算这个更大数据集的统计信息?是否有现成的R包/工具可以计算这样的统计量?
注:一个组的大小可以是任意的。在第一个例子中,一组由a、b和d组成,而在第二个例子中,一组由a和d组成。
sum(choose(40, 2:40))
= 1.099512e+12种组合,每种组合都有10个观测值。如果您愿意,可以轻松地一次计算一个子集,但更有用的可能是研究聚类方法。 - alistaireR parallel
包并行化了代码,然后在串行代码和并行代码中尝试了choose(40,5)
。令我惊讶的是,并行化的代码比串行化的代码花费更多时间。你有什么想法吗? - Haroon Loneplot(hclust(dist(t(df), method = 'manhattan') / nrow(df)))
。 - alistaire