计算重复值的数量

时间:2017-04-17 01:17:48

标签: r

我正在尝试运行一个函数,该函数将采用一个参数,即数字列表,并计算重复项。

示例:

number <- c(1, 1, 1, 2, 2, 4, 5)

在这种情况下,输出将为2,因为只有1和2有重复。

我知道如何使用for循环但不知道如何计算重复项。

count = 0
for (x in number){
    ...
}

2 个答案:

答案 0 :(得分:4)

将值列表,然后计算其中有多少值大于一。

x <- c(1, 1, 1, 2, 2, 4, 5)

sum(tabulate(x) > 1)
# [1] 2

或者,如果您正在寻找重复的直接运行,rle可以用作制表的替代方法。

with(rle(x), sum(lengths > 1))
# [1] 2

答案 1 :(得分:0)

此解决方案以 Python 编写。

Base

它将列表中出现的数字放在一个以上,然后计算该列表中的元素数量。