【发布时间】:2013-12-12 17:47:26
【问题描述】:
我有以下向量:
47 47 47 47 47 38 25 47 47 38
现在我在 R 中搜索一个命令,它给出了一个元素在向量中出现的次数。所以在这里我想得到以下回报:
47 7
38 2
25 1
有人知道有没有这样的命令吗?
【问题讨论】:
我有以下向量:
47 47 47 47 47 38 25 47 47 38
现在我在 R 中搜索一个命令,它给出了一个元素在向量中出现的次数。所以在这里我想得到以下回报:
47 7
38 2
25 1
有人知道有没有这样的命令吗?
【问题讨论】:
我发现 plyr 包中的count 函数很方便:
library(plyr)
dat = data.frame(a = sample(1:6, 1000, replace = TRUE))
count(dat, 'a')
a freq
1 1 153
2 2 148
3 3 160
4 4 178
5 5 177
6 6 184
【讨论】:
另一种解决方案:
dat <- data.frame(a = sample(1:6, 1000, replace = TRUE))
summary(as.factor(dat$a))
1 2 3 4 5 6
160 166 191 170 164 149
你会得到相同的结果:
table(dat$a)
1 2 3 4 5 6
160 166 191 170 164 149
【讨论】:
dat2 <- data.frame(table(dat$a))