将副本移动到新列中

我有这两个列数据库,列出基因代码,然后生物通路。 在数据库中,一些基因编码与多种生物学途径相关:

AB 396139 mesonephros development 396139 camera-type eye development 396139 Sertoli celldevelopment 

我试图摆脱这些重复,而每个生物学function移动到一个新的列:

  ABCD 396139 mesonephros development camera-type eye development Sertoli celldevelopment 

我已经在Excel中尝试了一些macros,但是在build设性方面没有成功。 我也是一个新的R,所以我不知道从哪里开始格式化。 任何软件的任何帮助将不胜感激。

这个问题与声明的重复有所不同,因为当我要求将它们分开时,它们正试图组合列。 这个问题的答案也比较简单,不需要外部包,因此值得分开。

我们可以使用data.table 。 我们将'data.frame'转换为'data.table'( setDT(df1) ),按'Gened.Code'分组,我们将这些元素paste在'Organ.Developmental.Effect'中。 toString是一个用于paste(., collapse=', ')的包装paste(., collapse=', ')

 library(data.table) setDT(df1)[, list(Col= toString(Organ.Developmental.Effect)) , Gene.Code] # Gene.Code #1: 11 #2: 19 #3: 37 #4: 674 #5: 2033 #6: 2-Sep #7: 5-Sep #8: 396139 # Col #1: eye photoreceptor cell differentiation #2: eye photoreceptor cell differentiation #3: eye photoreceptor cell differentiation #4: larval salivary gland morphogenesis #5: compound eye morphogenesis #6: imaginal disc development #7: imaginal disc development #8: metanephros development, mesonephros development, camera-type eye development