【问题标题】:R - Counting elements in a vector [duplicate]R - 计算向量中的元素
【发布时间】:2020-09-10 17:36:47
【问题描述】:

有没有一种方法可以计算向量中的元素,而不考虑其唯一值? 例如,我有一个向量 vec <- as.vector(c("A","A","B","B","A","A","B","B"))。 我想计算向量中的元素,所以它会返回一个[1] 2 2 2 2 的向量。

我曾尝试使用vctrs 包中的vec_count 函数:

my_vec <- as.vector(c("A","A","B","B","A","A","B","B"))
my_count <- vec_count(my_vec, sort = "key")
my_count$count
[1] 4 4

但是这个函数考虑了向量中的唯一元素,这不是我想要的。任何想法如何做到这一点?

【问题讨论】:

  • 我想你在找rle(vec)$lengths

标签: r vector count element vctrs


【解决方案1】:

由于您在这里计算连续序列,我们可以使用rle

rle(vec)$lengths
#[1] 2 2 2 2

data.table rleid 类似的东西:

table(data.table::rleid(vec))
#1 2 3 4 
#2 2 2 2 

【讨论】:

    猜你喜欢
    • 2014-02-27
    • 1970-01-01
    • 2021-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    • 2018-12-03
    相关资源
    最近更新 更多