使用R查找向量中数字的频率

时间:2020-05-27 10:10:50

标签: r

我有一个数字向量

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获得此输出?

1 个答案:

答案 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 
相关问题