2015-07-31 4 views
2

У меня есть список числовых векторов. Некоторые из этих векторов идентичны, и поэтому я хочу найти простой и быстрый способ сгруппировать идентичные векторы вместе и создать список для каждой из групп идентичных векторов и, возможно, сохранить все списки, которые мы только что создали в один гигантский список. Любая помощь будет оценена!R: список векторов - группировка идентичных векторов вместе

+0

есть ли пример? '? identity','? all.equal' – jenesaisquoi

ответ

2

Вот пример:

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

Вы можете присвоить каждому элементу списка "группа ID" с помощью match и unique:

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).

Смежные вопросы