UPDATED QUESTION
我有这个特征向量
str_ <- "H3K9me0S10ph1K14ac1me0"
我想把它分成几部分,这样我就能得到如下输出:
"H3K9: me0 | S10: ph1 | K14: ac1,me0"
最好是以利用{dplyr}的方式完成,这样我就可以在一个tible上执行这个操作,并获得一个具有所需字符串输出的新列.有什么 idea 吗?
正如以下部分所示,我很难得到一个表,表明哪些修改与什么匹配,例如me0与H3K9匹配,ac1和me0与K14匹配
任何帮助都会很有帮助!
Pieces of attempts
用一个稍微不同的例子,
str_ <- "H3K9ac1K14ac1K18ac1me0"
因此,我试图通过提取所有"me[0-9]*"或"ac[0-9]*"等,然后给它们一个与它们在字符向量中的索引相对应的id,将字符向量分解为若干部分.
# A tibble: 4 x 2
i m
<int> <chr>
1 12 ac1
2 17 ac1
3 23 ac1
4 26 me0
我需要一种方法来创建一个列together
,告诉两个修饰是否属于同一个蛋白质,也就是说,在这个例子中,K14有ac1和me0,所以它们的"一起"值应该是"真".我试着用他们指数之间的距离来代替团结,但我不认为这是最好的方法:
# A tibble: 4 x 2
i m unit_diff together
<int> <chr> <int> <lgl>
1 12 ac1 0 FALSE
2 17 ac1 5 FALSE
3 23 ac1 6 TRUE
4 26 me0 3 TRUE
有什么 idea 吗?我试过使用模3,但这似乎不能推广.这是正确的方法吗?我愿意接受建议