2015-04-30 2 views
2

У меня есть этот вектор в RПопытка создать идентификатор для вектора R

A 
B 
C 
A 
B 
C 
D 
E 
A 
B 
C 
A 
B 
D 
F 
G 

И я хочу, чтобы получить к следующему результату:

A 1 
B 1 
C 1 
A 2 
B 2 
C 2 
D 2 
E 2 
A 2 
B 2 
C 2 
A 3 
B 3 
D 3 
F 3 
G 3 

Так, другими словами, я Я пытаюсь установить идентификатор, чтобы начать новый номер с новым случаем «A». Очевидно, что это всего лишь часть данных, а мой вектор намного длиннее. Может кто-нибудь помочь с этим? Благодаря

+1

Я думаю, что вы пропустили один 'A' есть, Все, что вам нужно, это просто' cumsum (х == "A") ' –

+2

@bgoldst You ошибаются. У них явно есть строки в [исходном тексте оригинала] (http://stackoverflow.com/revisions/65b47400-3f03-4c61-84cb-c8c27f0e6268/view-source) и просто не знали, как использовать формирование кода , – Roland

+0

lol @edit history – rawr

ответ

5

Это простое применение cumsum:

data.frame(x, cumsum(x=='A')) 
+0

Это решение идеально. Спасибо всем –

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