首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >计数每个唯一值的出现次数

计数每个唯一值的出现次数
EN

Stack Overflow用户
提问于 2010-11-18 21:18:48
回答 12查看 508.6K关注 0票数 166

假设我有:

v = rep(c(1,2, 2, 2), 25)

现在,我想计算每个唯一值出现的次数。unique(v)返回唯一值是什么,但不返回它们有多少。

> unique(v)
[1] 1 2

我想要能给我的东西

length(v[v==1])
[1] 25
length(v[v==2])
[1] 75

但作为更一般的一行代码:)类似如下的内容(但不完全是):

#<doesn't work right> length(v[v==unique(v)])
EN

回答 12

Stack Overflow用户

回答已采纳

发布于 2010-11-18 21:23:34

也许桌子就是你想要的?

dummyData = rep(c(1,2, 2, 2), 25)

table(dummyData)
# dummyData
#  1  2 
# 25 75

## or another presentation of the same data
as.data.frame(table(dummyData))
#    dummyData Freq
#  1         1   25
#  2         2   75
票数 207
EN

Stack Overflow用户

发布于 2015-09-08 03:08:30

如果您有多个因子(=多维数据框),则可以使用dplyr包来计算每个因子组合中的唯一值:

library("dplyr")
data %>% group_by(factor1, factor2) %>% summarize(count=n())

它使用管道操作符%>%来链接数据帧data上的方法调用。

票数 33
EN

Stack Overflow用户

发布于 2014-09-13 04:09:57

它是使用aggregate的单行方法。

> aggregate(data.frame(count = v), list(value = v), length)

  value count
1     1    25
2     2    75
票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4215154

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档