【问题标题】:R: list of vectors - grouping identical vectors togetherR:向量列表 - 将相同的向量分组在一起
【发布时间】:2015-07-31 17:32:35
【问题描述】:

我有一个数字向量列表。其中一些向量是相同的,所以我想做的是找到一种简单快捷的方法将相同的向量组合在一起,并为每组相同的向量创建一个列表,并可能保存我们刚刚创建的所有列表进入一个巨大的列表。任何帮助将不胜感激!

【问题讨论】:

  • 有例子吗? ?identical, ?all.equal

标签: r list vector


【解决方案1】:

这是一个例子:

x  <- list(v1= 1:3, v2 = 2:3, v3 = 2:3, v4 = 1:3, v5 = 4)

您可以使用matchunique 为列表的每个元素分配一个“组ID”:

ux  <- unique(x)
# str(ux)
# List of 3
#  $ : int [1:3] 1 2 3
#  $ : int [1:2] 2 3
#  $ : num 4

gid <- match(x,ux)
# [1] 1 2 2 1 3

gid 对应于ux 的一个元素。

无论你想从那里做什么都非常简单,比如ave(x, gid, FUN=some_function)

【讨论】:

    猜你喜欢
    • 2013-03-09
    • 1970-01-01
    • 1970-01-01
    • 2014-02-25
    • 1970-01-01
    • 2016-10-19
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    相关资源
    最近更新 更多