R包中的汇总函数

时间:2013-06-28 03:12:45

标签: r attributes

以下是样本数据:

a <- structure(list(Occ = c(1, 2, 3, 4, 4, 5, 6, 4, 8, 5), 
Type = c("A", "B", "C", "A", "A", "A", "B", "C", "C", "B"), 
Alc = c("A", "B", "N", "A", "N", "N", "N", "A", "B", "B"), 
Count = c(10, 10, 20, 10, 15, 15, 10, 10, 20, 15)),
.Names = c("Occ", "Type", "Alc", "Count"), row.names = c(NA, -10L), class = "data.frame")

我喜欢得到列的每个属性的频率计数,如下所示:

Occ:    Type    Alc     Count
1: 1    A: 4    A: 3    10: 5
2: 1    B: 3    B: 3    15: 3   
3: 1    C: 3    N: 4    20: 2
4: 3
5: 2
6: 1
8: 1

这个问题可以通过'anacor'包中的'summary'功能部分解决。我仍在寻找更好的解决方案。

2 个答案:

答案 0 :(得分:3)

实际上summary.default做了类似的事情。答案取决于你是指真正的R“属性”还是只是对属性的一些模糊的自然语言理解。 str是查看对象所有内容的方法。还有几个版本的describe。我使用的是Hmisc::describe,但其他一些包有不同的版本。 (我希望有一种方法可以坚持特定的功能不会被最新的软件包版本掩盖。)

答案 1 :(得分:1)

我可能会在table的元素上使用a,就像在

中一样
> lapply(a, table)
$Occ

1 2 3 4 5 6 8 
1 1 1 3 2 1 1 

$Type

A B C 
4 3 3 

$Alc

A B N 
3 3 4 

$Count

10 15 20 
 5  3  2