美文网首页走进转录组
day48 转录组 计数&表达矩阵

day48 转录组 计数&表达矩阵

作者: meraner | 来源:发表于2022-08-12 20:49 被阅读0次

    转录组分析要用比对后的bam或sam文件进行后续计数。也就是对基因/转录本的区域上比对到的reads进行计数。最后算出来某个转录本或者外显子上比对上多少个reads。显然,如果某个样本中比对到某个基因转录本上的reads多,那这个基因的表达量理论上就高。在不同样本之间只用计数来比对似乎比较简单。但考虑到不同基因长度不一样,还有管家基因等,在计算表达矩阵的时候要更复杂些。
    用于计数的软件有:htseq-count,featurecounts(subread)等。

    一、featurecounts
    这个用于计数的软件时集成在subread里面的。可以用作RNAseq数据计数,也可以用于ChIPseq的数据计数分析哦。运行它需要两种文件:
    1,BAM/SAM作为样本输入,里面有每个reads比对到染色体上的位置信息。
    2,GFF/GTF/SAF文件作为注释文件,里面有feature 的属性,染色体位置起始点这类信息。
    注意的是:第二类文件要和前面BAM/SAM获得用的注释fa文件的版本来源一致。比如用了UCSC的hg38的fa文件去比对,那现在就要用UCSC的gtr来注释feature。(查看day41复习)
    此外对feature还要理解一下,feature就是基因组上的一段序列,在一条染色体上的某一片段,有明确起点和终点,有明确的特定功能——也就是它的大小性质已被定义。那么mapping到某个feature上的reads多少,就能反应样本的某个特定功能的强或弱。metafeature就是一些feature组成的集合。比如exon可以说是feature,一个基因所有exon组成了一个metafeature。

    1.单端数据

    参数
    -g 默认为gene_id,就是需要提供一个id identifier 来将feature水平的统计汇总为meta-feature水平的统计。此参数必须为gtf上有的列名 。
    -t 默认为exon,就是read只有落到这些feature上才会被统计到。此参数必须为gtf上有的列名 。可以设定为-t gene,就不按照exon了吧。
    -f 设定后统计feature层面的数据,如exon-level,否则会统计meta-feature层面的数据

    conda activate py2.7 #激活2.7环境
    project=~/rnaseq #项目文件夹
    #step5:count
    mkdir $project/count
    output_dir=$project/count
    GTF=/home/cloudam/reference/subread_index/hg38.knownGene.gtf
    featureCounts -a $GTF -o $output_dir/counts.txt $project/align/*.bam
    

    用UCSC里面的knownGene.gtf做出来的注释,基因名完全看不懂。运行速度倒是很快,每个样本都不到1min,最后生成的count.txt文件几十M,而且是包含了四个样本的呢。


    image.png
    conda activate py2.7 #激活2.7环境
    project=~/rnaseq #项目文件夹
    #step5:count
    mkdir $project/count
    output_dir=$project/count
    GTF=/home/cloudam/reference/subread_index/hg38.ncbiRefSeq.gtf
    featureCounts -a $GTF -o $output_dir/counts2.txt $project/align/*.bam
    

    用ncbiRefSeq.gtf做注释文件,就能得到熟悉的gene名啦。


    image.png

    2.双端数据

    待续。。。。

    相关文章

      网友评论

        本文标题:day48 转录组 计数&表达矩阵

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