美文网首页ggplot集锦
TCGA中RNA-seq数据根据基因的表达量分组

TCGA中RNA-seq数据根据基因的表达量分组

作者: 生信蟹道人 | 来源:发表于2021-09-01 15:22 被阅读0次

    代码保存位置: /mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/script/

    1.sample_info.sh

    #!bin/bash
    #指定list代表的文件
    list=/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/script/Symblel2Ensembl.txt
    
    #逐行遍历list文件列表
    while read line
    do 
    arr=($line) #将该行赋值给arr
    panel=${arr[0]} #该行第一列赋值给panel
    id=${arr[1]}    #该行第二列赋值给id
    #grep从输入文件中遍历逐行提取包含字符Ensembl_ID和$id的行,并导出到输出文件中
    grep -E "Ensembl_ID|$id"  "/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KIRP/TCGA-KIRP.htseq_fpkm4.tsv" > "/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KIRP/sample_gene/sample_info2.$panel.$id" 
    done<$list
    #逐行遍历list文件列表
    while read line
    do 
    arr=($line) #将该行赋值给arr
    panel=${arr[0]} #该行第一列赋值给panel
    id=${arr[1]}    #该行第二列赋值给id
    #grep从输入文件中遍历逐行提取包含字符Ensembl_ID和$id的行,并导出到输出文件中
    grep -E "Ensembl_ID|$id"  "/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KIRC/TCGA-KIRC.htseq_fpkm4.tsv" > "/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KIRC/sample_gene/sample_info2.$panel.$id"
    done<$list
    #逐行遍历list文件列表
    while read line
    do 
    arr=($line) #将该行赋值给arr
    panel=${arr[0]} #该行第一列赋值给panel
    id=${arr[1]}    #该行第二列赋值给id
    #grep从输入文件中遍历逐行提取包含字符Ensembl_ID和$id的行,并导出到输出文件中
    grep -E "Ensembl_ID|$id"  "/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KICH/TCGA-KICH.htseq_fpkm4.tsv" > "/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KICH/sample_gene/sample_info2.$panel.$id"
    done<$list
    

    cat /mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/script/Symblel2Ensembl.txt #查看list文件内容

    image.png

    cat /mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KICH/TCGA-KICH.htseq_fpkm4.tsv #查看TCGA-KICH.htseq_fpkm4.tsv文件内容

    image.png

    2.sample_info2Tosample_info.txt.sh

    #!bin/bash
    #首先设置for循环,$i遍历RP,RC,CH三个字符
    for i in RP RC CH
    do
    #指定list1代表的文件  
    list1=/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/script/Symblel2Ensembl.txt
    #逐行遍历list1文件列表
    while read line
    do 
    Suffix=($line) #将该行赋值给Suffix
    Suffix1=${Suffix[0]} #该行第一列赋值给Suffix1
    Suffix2=${Suffix[1]} #该行第二列赋值给Suffix2
    #awk将输入文件进行转置,并导出为输出文件
    awk '{for(i=1;i<=NF;i++)a[NR,i]=$i}END{for(j=1;j<=NF;j++)for(k=1;k<=NR;k++)printf k==NR?a[k,j] RS:a[k,j] FS}' /mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KI$i/sample_gene/sample_info2.${Suffix1}.${Suffix2} > /mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KI$i/sample_gene/sample_info2.${Suffix1}.${Suffix2}.Trans
    #指定lis2t代表的文件 
    list2=/mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KI$i/sample_gene/sample_info2.${Suffix1}.${Suffix2}.Trans
    #计算list2文件中第二列,即基因表达量的平均值,并赋值给aver.
    aver=`cat $list2 |awk 'NR>1 {sum += $2; } END {sum; print  sum/(NR-1)}'`
    #判断$list2.group文件是否存在,若不存在则显示文件不存在,若存在则删除原文件
    if [ ! -f "$list2.group" ];then
      echo "文件不存在"
    else
      rm -f $list2.group
    fi
    #逐行遍历list2文件列表
    while read line
    do 
    arr=($line) #将该行赋值给arr
    sample=${arr[0]} #该行第一列赋值给sample
    exp=${arr[1]}  #该行第二列赋值给exp
    B="ENSG" #将字符ENSG赋值给B
    
    if [[ $exp == $B* ]] #判定$exp是否包含ENSG这一字符
    then
        line=`echo $sample  $exp  "label"` #将$sample  $exp  label赋值给line
    elif [ `expr $exp \> $aver` -eq 1 ] #判断该样本基因表达值与平均值的大小
    then
        line=`echo $sample  $exp  "high"` #若该样本基因表达值高于平均值将,则将$sample  $exp  high赋值给line
    else 
        line=`echo $sample  $exp  "low"` #若该样本基因表达值高于平均值将,则将$sample  $exp  low赋值给line
    fi
    echo "$line" >> "$list2.group" #将line所包含的内容追加写入到$list2.group文件中
    done<$list2
    done<$list1
    done
    

    cat /mnt/vol2_ws/test/projects/xcy/data/2021-8-12-liang/data/11/tcga/TCGA-KIRP/sample_gene/sample_info2.ATM.ENSG00000149311.Trans #查看list2文件内容

    image.png

    相关文章

      网友评论

        本文标题:TCGA中RNA-seq数据根据基因的表达量分组

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