我有一个数字向量
a = c(1:100)
digits = c(0:9)
我想知道向量中数字的频率。我想要的输出正是以下示例:
Digits Frequency
0 10
1 20
2 20
3 20
4 20
5 20
6 20
7 20
8 20
9 20
如何使用R获得此输出?
答案 0 :(得分:0)
您可以使用as.character
将数字转换为字符,然后使用strsplit
拆分为单个字符,并使用table
计算频率。
table(unlist(strsplit(as.character(a), "")))
# 0 1 2 3 4 5 6 7 8 9
#11 21 20 20 20 20 20 20 20 20
或者在输入更多变化的情况下:
table(unlist(strsplit(gsub("[^[:digit:]]", "", format(a, scientific =FALSE)), "")))
# 0 1 2 3 4 5 6 7 8 9
#11 21 20 20 20 20 20 20 20 20