美文网首页
处理ENCORI预测的miRNA-circRNA结果

处理ENCORI预测的miRNA-circRNA结果

作者: 生信交流平台 | 来源:发表于2022-01-22 20:43 被阅读0次

    前面给大家详细的介绍过ENCORI这个数据库,相信很多小伙伴也已经使用过这个工具了

    RNA相互作用神器——ENCORI

    ☞starbase(ENCORI)数据库介绍(一)

    R批量预测miRNA和靶基因之间的调控关系-ENCORI篇

    ☞零代码生存曲线—ENCORI篇

    ☞miRNA数据库简介及miRNA靶基因批量预测

    最近有小伙伴反映,使用这个数据库预测的miRNA-circRNA调控关系的结果中geneName这一列有些显示的是标准的circRNA的ID号,但是大多数显示的都是基因名字。怎么样才能让这一列全部显示circRNA的ID号呢?

    前面我们也给大家讲解过怎么样用代码批量下载miRNA靶基因的结果

    ☞R下载合并ENCORI miRNA靶基因数据

    用代码下载下来的结果,你会发现跟直接从网页上下载的结果不太一样,似乎多了一列circID,而这一列正式我们需要的circID,里面全部是标准的circRNA的ID号。

    但是这里又有一个问题,一个miRNA可以同时靶向多个circRNA,所以有些行里面会出现多个circRNA ID,用逗号隔开。这种格式是没办法直接作为cytoscape的输入文件的。前面给大家介绍过

    cytoscape构建ceRNA网络的输入文件如何制作

    我们知道如果要构建ceRNA网络,cytoscape的边的文件格式必须是下面这种,一对一的关系,而不能是一对多的关系

    那么接下来小编就来教大家把一对多转换成一对一的关系

    #读入miRNA靶基因预测結果,跳过前四行
    a=read.table("ENCORI_hg19_miRNATarget_hsa-miR-25-3p_all_all.txt",sep="\t",stringsAsFactors = F,skip=4)
    #提取第二列miRNAname和第五列circID,
    b=a[,c(2,5)]
    #给b添加列名
    names(b)=c("mir","circ")
    #将circID列,按照,拆分开,然后强制转换成向量
    circs=unlist(strsplit(b$circ,","))
    #构建miRNA-circRNA一对一的关系,mir都是相同的hsa-miR-25-3p,长度跟circ向量的长度一样
    #第一列为miRNA名字,第二列为circRNA的名字
    result=data.frame(mir=rep(unique(b$mir),length(circs)),circ=circs)
    #去除一下冗余
    result_rmdp=unique(result)
    #保存結果到miRNA_circ.txt中
    write.table(file="miRNA_circ.txt",result_rmdp,quote=F,row.names = F,sep="\t")
    

    最后我们得到的结果是这样的

    相关文章

      网友评论

          本文标题:处理ENCORI预测的miRNA-circRNA结果

          本文链接:https://www.haomeiwen.com/subject/dokphrtx.html