R:向量列表 - 将相同的向量分组在一起

时间:2015-07-31 17:32:36

标签: r list vector

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

1 个答案:

答案 0 :(得分:2)

以下是一个例子:

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

您可以为列表中的每个元素指定一个&#34;组ID&#34;使用matchunique

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)