计算R中的唯一分类值

时间:2012-11-09 16:55:53

标签: r count

我刚刚开始使用R作为Excel的替代品。我处理的数据库非常庞大,我需要一个新工具来更好地使用它们。我已经设法在这个网站上找到了很多关于R的答案,这些答案帮助我构建了我的脚本,但却无法找到任何特定类型分析的结论。

我的数据如下:

Col1   Col2     Col3    ... Col50  

 M    18-24     Single  ... Employed

 F    18-24     Married ... Unemployed

 F    Under 18  Single  ... Employed

通常我处理的数据库甚至有100,000行和30到70列,通常每列不超过20个唯一值

我想要的是一个子集输出,它将为我提供每个唯一的频率计数 每列中的值:

Col1

Variable name / F / M

Frequency / 2 / 1

.....

Col50

Variable name / Employed / Un-employed

Frequency /  2 / 1

任何人都可以至少给我一些我应该想要的东西来计算那些绝对值。我需要特殊包装吗?我能够找到一些计算值的函数,但它们只引用数值(如"table()function"

大卫罗杰斯

2 个答案:

答案 0 :(得分:5)

table听起来像你想要的。它将为您提供每个值的出现次数。为了方便地将表格应用于每一列,我们可以使用lapply

lapply(your_data, table)
# Example use and output
lapply(mtcars, table)

答案 1 :(得分:0)

如果你使用摘要(mydata),它应该给你输出每列中每个唯一值出现的次数。

如果使用count(mydata $ column.name),它将为您提供该列中的唯一值和频率。

你应该能够在所有列中使用tapply来获得你想要的东西。