美文网首页
RBP AS生信流程( 四)rMATs

RBP AS生信流程( 四)rMATs

作者: cHarden13 | 来源:发表于2020-08-15 08:40 被阅读0次

    rMATs

    #进入python环境后,输入下列代码:
    >>> import sys
    >>> print sys.maxunicode
    #输出的是1114111,因此使用rMATS-turbo-Linux-UCS4文件夹下rmats.py
    #配置路径:
    echo 'export PATH=~/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4:$PATH' >>~/.bashrc
    source ~/.bashrc
    python rmats.py
    ##上面这行代码用不了,可能是环境变量的问题,改用如下代码:
    python /home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rmats.py 加bam文件
    

    rMATs运行:

    在rMATstest这个文件夹里有官网下载好的2x2测试文件:


    官网测试文件

    用samtools查看bam文件:

    samtools view 231ESRP.25K.rep-1.bam | head -10
    
    查看bam文件

    可以看到第三列为1,代表1号染色体(这里是1,不是chr1,这里很重要)

    #将bam文件的名字写入txt文档里:
    echo 231ESRP.25K.rep-1.bam,231ESRP.25K.rep-2.bam > b1.txt
    echo 231EV.25K.rep-1.bam,231EV.25K.rep-2.bam > b2.txt
    #运行rMATs:
    python /home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rmats.py --b1 b1.txt \
    --b2 b2.txt --gtf /home/sxw/HF/Homorefer/humangtf/gencode37.gtf \ 
    --od outDir -t paired \ #paired是双端测序,single是单端测序
    --readLength 101 --libType fr-unstranded --nthread 10
    

    报错:
    (Running the statistical part.
    /home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rMATS_C/rMATSexe: error while loading shared libraries: libgfortran.so.3: cannot open shared object file: No such file or directory
    Traceback (most recent call last):
    File "/home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rMATS_P/FDR.py", line 45, in <module>
    ifile=open(sys.argv[1]);title=ifile.readline();
    IOError: [Errno 2] No such file or directory: '/tmp/tmp_juQuj/JC_SE/rMATS_result_P-V.txt'
    paste: /tmp/tmp_juQuj/JC_SE/rMATS_result_FDR.txt: 没有那个文件或目录)
    缺libgfortran.so.3:

    sudo apt-get install libgfortran3
    

    再次运行依然报错:缺libgsl.so.0。解决方法:

    sudo find / -name "libgsl.so.19"
    #输出 /usr/lib/x86_64-linux-gnu/libgsl.so.19
    sudo cp /usr/lib/x86_64-linux-gnu/libgsl.so.19  /usr/lib/libgsl.so.0
    sudo ldconfig #未报错,说明成功运行
    

    再次运行依然报错:缺libblas.so.3。解决方法:https://blog.csdn.net/qq_40155090/article/details/79729959
    再次运行:未报错,可以运行成功。

    rMATs输出结果
    打开SE.MATS.JC.txt:
    SE.MATS.JC.txt
    列标题解释见:微信搜狗作图丫:rMATS进行差异可变剪切分析并可视化

    rmats2sashimiplot

    wget https://github.com/Xinglab/rmats2sashimiplot/archive/master.zip](https://github.com/Xinglab/rmats2sashimiplot/archive/master.zip
    #进入文件夹rmats2sashimiplot-master:
    python setup.py install
    #运行:
    rmats2sashimiplot –help #成功
    

    接下来对SE.MATS.JC.txt进行可视化:
    这里注意一个坑:rmats2sashimiplot的输入文件里各个文件中染色体格式均需保持一致,要么使用1,2,3......21,22,X,Y,要么使用chr1,chr2,chr3......chr21,chr22,chrX,chrY。我们的bam文件里第三列染色体是1、2、3,而SE.MATS.JC.txt里染色体为chr1、chr2、chr3。
    最好的办法是将txt文件里染色体名字由chr1、chr2、chr3改为1、2、3

    sed -i '2,$s/\tchr/\t/g' *MATS*txt
    #-i表示直接修改文件内容,2,$表示从第二行到最后一行(第一行是列名,不能替换),g表示全局
    

    替换之后:


    去除11前的chr
    rmats2sashimiplot --b1 231ESRP.25K.rep-1.bam,231ESRP.25K.rep-2.bam \
    --b2 231EV.25K.rep-1.bam,231EV.25K.rep-2.bam -t SE \
    -e /home/sxw/rMATstest/outDir/sedtest/SE.MATS.JC.txt --l1 231ESRP.25K --l2 231EV.25K -o SE_plot1
    

    缺少pysam和scipy这两个python的插件,用pip install安装以后,程序可以运行,输出三个pdf文件:


    rmats2sashimiplot的输出

    以上步骤可以运行成功,接下来在GSE46224数据集里进行操作:
    normal:SRR830965-SRR830972;HF:SRR830973-SRR830988(缺986)

    #将normal和HF里所有STAR比对好的bam文件移到一个新文件夹:
    mv *.bam /home/sxw/HF/GSE46224/afterbam
    #在afterbam文件夹里:
    echo SRR830973_Aligned.sortedByCoord.out.bam > b1.830973.txt #HF
    echo SRR830965_Aligned.sortedByCoord.out.bam,SRR830966_Aligned.sortedByCoord.out.bam,SRR830967_Aligned.sortedByCoord.out.bam,SRR830968_Aligned.sortedByCoord.out.bam,SRR830969_Aligned.sortedByCoord.out.bam,SRR830970_Aligned.sortedByCoord.out.bam,SRR830971_Aligned.sortedByCoord.out.bam,SRR830972_Aligned.sortedByCoord.out.bam > b2.txt #normal
    python /home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rmats.py --b1 b1.830973.txt --b2 b2.txt \
    --gtf /home/sxw/HF/Homorefer/humangtf/genecode38.gtf --od outDir830973 -t paired \
    --readLength 101 --libType fr-unstranded --nthread 10
    #将rMATs运行进程存在log.txt
    

    程序可以跑通,接下来写循环进行操作:

    #构建echoname.sh:
    for i in {830974,830975,830976,830977,830978,830979,830980,830981,830982,830983,830984,830985,830987,830988}
    do
        echo SRR${i}_Aligned.sortedByCoord.out.bam > b1.${i}.txt
    done
    
    #构建rMATs.sh:
    for i in {830974,830975,830976,830977,830978,830979,830980,830981,830982,830983,830984,830985,830987,830988}
    do
        python /home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rmats.py --b1 b1.${i}.txt --b2 b2.txt \
        --gtf /home/sxw/HF/Homorefer/humangtf/genecode38.gtf --od outDir${i} -t paired \
        --readLength 101 --libType fr-unstranded --nthread 20
    done
    

    接下来对15个HF和8个normal进行操作:

    python /home/sxw/biosofts/rMATS.4.0.2/rMATS-turbo-Linux-UCS4/rmats.py --b1 b1.txt --b2 b2.txt \
    --gtf /home/sxw/HF/Homorefer/humangtf/genecode38.gtf --od outDirGSE46224 -t paired \
    --readLength 101 --libType fr-unstranded --nthread 10
    #b1.txt是心衰的,b2.txt是normal的
    #进程储存在outDirGSE46224的log.txt里
    

    相关文章

      网友评论

          本文标题:RBP AS生信流程( 四)rMATs

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