GEO数据挖掘

作者: 看远方的星 | 来源:发表于2019-04-19 22:51 被阅读72次

    复现此篇文章: https://mp.weixin.qq.com/s/5Bdx7YyAk8InYs2MFIUUVQ

    下载相应的R包
    options(BioC_mirror="http://mirrors.ustc.edu.cn/bioc/") # 设置镜像
    BiocManager::install('stringi')
    BiocManager::install('GEOquery')
    BiocManager::install('limma')
    BiocManager::install('ggfortify')
    BiocManager::install('ggplot2')
    BiocManager::install('pheatmap')
    BiocManager::install('ggstatsplot')
    BiocManager::install('VennDiagram')
    BiocManager::install('clusterProfiler')
    BiocManager::install('org.Hs.eg.db')
    

    浏览器下载gtf格式文件:没录全屏,最后点击链接后,浏览器就开始下载文件了。


    gtf.gif

    gtf格式:GTF基因注释文件详解
    gunzip .gtf.zip文件
    cat .gtf文件
    tail  .gtf文件  
    
    通过以上步骤复制粘贴出前后的两条注释,做初步了解:
    1   havana  gene    11869   14409   .   +   .   gene_id "ENSG00000223972"; gene_version "5"; gene_name "DDX11L1"; gene_source "havana"; gene_biotype "transcribed_unprocessed_pseudogene";
    
    KI270713.1  ensembl CDS 35407   35913   .   +   0   gene_id "ENSG00000268674"; gene_version "2"; transcript_id "ENST00000601199"; transcript_version "2"; exon_number "1"; gene_name "AC213203.1"; gene_source "ensembl"; gene_biotype "protein_coding"; transcript_name "AC213203.1-201"; transcript_source "ensembl"; transcript_biotype "protein_coding"; protein_id "ENSP00000473163"; protein_version "
    
    1. seq_id:序列的编号,一般为chr或者scanfold编号;
    2. source: 注释的来源,一般为数据库或者注释的机构,如果未知,则用点“.”代替;
    3. type: 注释信息的类型,比如Gene、cDNA、mRNA、CDS等
    4. start:该基因或转录本在参考序列上的起始位置;
    5. end: 该基因或转录本在参考序列上的终止位置;
    6. score: 得分,数字,是注释信息可能性的说明,可以是序列相似性比对时的E-values值或者基因预测是的P-values值,“.”表示为空;
    7. strand: 该基因或转录本位于参考序列的正链(+)或负链(-)上;
    8. phase: 仅对注释类型为“CDS”有效,表示起始编码的位置,有效值为0、1、2(对于编码蛋白质的CDS来说,本列指定下一个密码子开始的位置。每3个核苷酸翻译一个氨基酸,从0开始,CDS的起始位置,除以3,余数就是这个值,,表示到达下一个密码子需要跳过的碱基个数。该编码区第一个密码子的位置,取值0,1,2。0表示该编码框的第一个密码子第一个碱基位于其5'末端;1表示该编码框的第一个密码子的第一个碱基位于该编码区外;2表示该编码框的第一个密码子的第一、二个碱基位于该编码区外;如果Feature为CDS时,必须指明具体值。);
    9. attributes:一个包含众多属性的列表,格式为“标签=值”(tag=value),标签与值之间以空格分开,且每个特征之后都要有分号;(包括最后一个特征),其内容必须包括gene_id和transcript_id。以多个键值对组成的注释信息描述,键与值之间用“=”,不同的键值用“;
    要得到基因与基因类型的对应关系即需要取出第三列和 gene_name这一列。
    cat Homo_sapiens.GRCh38.96.gtf >hg38
    awk '{print $3}' hg38 >type1  #输出第三列内容到type1里
    sed '/^\s*$/d' type1 >type2  删除空行并输出内容到type2里
     uniq type2 >type3   #去掉重复行
    awk '{print NR $0}' type3 | tail -1 #统计行数
    
    awk命令:awk '{pattern + action}' 或者 awk 'pattern {action}'

    • 作用:把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

    • pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。花括号 ({}) 不需要在程序中始终出现,但它们用于根据特定的模式对一系列指令进行分组。

    • 变量NF : field 在文本文件表示一个竖行
      NR:record 在文本文件表示一个横行

    awk '{print $0}'  tmp.txt         # 打印出tmp.txt的全部内容  $0:全部内容 $1:第一列 $n:第n列
    awk'$3==1986{print $0}'  tmp.txt  #第三列是1986则打印出所有内容
    awk '{if($0!="") print}' tmp.txt  #删除空行
    awk '{if(!NF || /^#/){next}}1' file1 实现对文件里面的空行和#开头的行进行跳过操作,并输出结果。
    
    
    sed命令:

    附:

    awk文章

    相关文章

      网友评论

        本文标题:GEO数据挖掘

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