R znajdowanie duplikatów w jednej kolumnie i zwijanie w drugiej kolumnie

Mam ramkę danych z dwiema kolumnami kontaktującymi się z łańcuchami znaków. w jednej kolumnie (nazwanejprobes) Mam zduplikowane przypadki (to znaczy kilka przypadków z tym samym ciągiem znaków). dla każdego przypadku w sondach chcę znaleźć wszystkie przypadki zawierające ten sam ciąg, a następnie scalić wartości wszystkich odpowiednich przypadków w drugiej kolumnie (nazwanejgenes) w jednym przypadku. na przykład, jeśli mam tę strukturę:

    probes  genes
1   cg00050873  TSPY4
2   cg00061679  DAZ1
3   cg00061679  DAZ4
4   cg00061679  DAZ4

Chcę go zmienić na tę strukturę:

    probes  genes
1   cg00050873  TSPY4
2   cg00061679  DAZ1 DAZ4 DAZ4

oczywiście nie ma problemu z zrobieniem tego dla pojedynczej sondy, która używa, a następnie wkleja i zwija

ind<-which(olap$probes=="cg00061679")
genename<-(olap[ind,2])
genecomb<-paste(genename[1:length(genename)], collapse=" ")

ale nie jestem pewien, jak wyodrębnić indeksy duplikatów w kolumnie sond w całej ramce danych. jakieś pomysły?

Z góry dziękuję

questionAnswers(2)

yourAnswerToTheQuestion