我有一列描述性数据,我希望将其子集到新的列中.在我的专栏中,有一些基因被定义为从低到高的置信度.对于每一种置信度类型,我试图创建自己的列,其中包含基因,然后根据我原始数据中分配给它们的置信度将其分配到其中.
例如,我的数据如下所示:
Gene Prioritization
Medium High:CCNL2 C1orf170 PLEKHN1 RP11-54O7.17 HES4 | Low:AL645608.7 AL390719.1 WASH7P CPTP
Medium High:CCNL2 ATAD3A C1orf222 CALML6 TMEM52 | Medium Low:GNB1 RER1 NADK | Low:AL109917.1
Medium High:PRDM16 | High: ACE
我希望将其转换为类似以下内容:
Low Medium Low Medium High High
AL645608.7 GNB1 CCNL2 ACE
AL390719.1 C1orf170 RER1
...
因此,每个基因都归入了一个列,显示了它被赋予了多大的置信度(即使一个基因有多个置信度,它也可以放在多个列中).
我不知道从哪里开始得到我想要的东西.我一直在try 编写代码,所以我将4个置信度设置为组,然后使用groupby(),但我不确定要使用什么函数将收集到的基因放入正确的列中.
输入数据示例:
structure(list(`Gene Prioritization` = c("Medium High:CCNL2 C1orf170 PLEKHN1 RP11-54O7.17 HES4 | Low:AL645608.7 AL390719.1 WASH7P CPTP",
"Medium High:CCNL2 ATAD3A C1orf222 CALML6 TMEM52 | Medium Low:GNB1 RER1 NADK | Low:AL109917.1",
"Medium High:SKI PEX10 C1orf86 AL590822.1 RP11-181G12.4 RP11-181G12.5 | Medium Low:CALML6 TMEM52 CFAP74",
"Medium High:TNFRSF14 PEX10 | Medium Low:RER1 | Low:AL391244.1",
"Medium High:PRDM16 | High: ACE")), row.names = c(NA, -5L), class = c("data.table",
"data.frame"))