首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何生成三重列集并将其应用于其中

如何生成三重列集并将其应用于其中
EN

Stack Overflow用户
提问于 2016-02-06 05:09:41
回答 1查看 39关注 0票数 1

我有一个mycols的数据格式。您可以看到mycols有^SQN^WES^WGS列集。我想让SQNWESWGS列(我不想包含(Pile:up)$:AD$列)按照相同的顺序(您可以看到每个组的扩展都是相同的)在mycols中创建三重态集。换句话说,我想创建一组具有相同扩展的SQN、WES和WGS。然后,我有一个名为myfunc的函数。我想把这个函数应用到这样形成的每一个三重集上。

代码语言:javascript
复制
mycols<- c("SQN:IDH2:G515T:R172M","WES:IDH2:G515T:R172M"    ,"WES:IDH2:G515T:R172M:AD:(Pile:up)", "WGS:IDH2:G515T:R172M","SQN:JAK1:A1432T:T478S",   "WES:JAK1:A1432T:T478S" ,"WES:JAK1:A1432T:T478S:AD:(pile:up)","WGS:JAK1:A1432T:T478S","SQN:JAK1:T1868C:V623A","WES:JAK1:T1868C:V623A","WES:JAK1:T1868C:V623A:AD","WES:JAK1:T1868C:V623A:AD:(Pile:up)",  "WGS:JAK1:T1868C:V623A")

结果:

代码语言:javascript
复制
triplet1
"SQN:IDH2:G515T:R172M",   "WES:IDH2:G515T:R172M", "WGS:IDH2:G515T:R172M" 
triplet2
"SQN:JAK1:A1432T:T478S","WES:JAK1:A1432T:T478S","WGS:JAK1:A1432T:T478S",
triplet3
"SQN:JAK1:T1868C:V623A","WES:JAK1:T1868C:V623A","WGS:JAK1:T1868C:V623A"

所以我可以简单的把我的函数调用到triplet1,三元组2,triplet3.

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-06 05:17:13

我们可以用grepl获得没有'P(p)ile:up‘或'AD’的字符串的逻辑索引。将“mycols”与“i1”进行子集。使用sub创建一个分组变量,方法是删除前缀部分,从字母字符开始,包括第一个:,然后split‘mycols1 1’。

代码语言:javascript
复制
i1 <- !grepl('(?i)(P)ile|AD$', mycols)
mycols1 <- mycols[i1]
split(mycols1, sub('[^:]+:', '', mycols1))
#$`IDH2:G515T:R172M`
#[1] "SQN:IDH2:G515T:R172M" "WES:IDH2:G515T:R172M" "WGS:IDH2:G515T:R172M"

#$`JAK1:A1432T:T478S`
#[1] "SQN:JAK1:A1432T:T478S" "WES:JAK1:A1432T:T478S" "WGS:JAK1:A1432T:T478S"

#$`JAK1:T1868C:V623A`
#[1] "SQN:JAK1:T1868C:V623A" "WES:JAK1:T1868C:V623A" "WGS:JAK1:T1868C:V623A"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35237582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档