在跑完htseq或者featureCounts之后会生成很多个如下的样本表达矩阵:
image.png我们看一下每个样本有多少行:
wc -l 样本.count
发现都是55455行,这样的话就可以按行合并:
image.png
paste SRR3589959.count SRR3589960.count SRR3589961.count SRR3589962.count > merge.count
最后生成如下矩阵:
image.png
这时候发现gene_id是一样的,我们可以提取我们想要的列,比如要第1,2,4,6,8列:
awk '{printf $1 "\t" ; for (i=2; i<=NF; i=i+3) printf $i "\t" ; print $i}' merge.count > merge2.conut
image.png
最后就拿到我们想要的合并的表达矩阵。
当然你也可以一步到位:
paste ./SRR3589959.count ./SRR3589960.count ./SRR3589961.count ./SRR3589962.count | awk '{printf $1 "\t" ; for (i=2; i<=NF; i=i+2) printf $i "\t" ; print $i}' > ./merge.count
或者加个通配符:
paste ./*.count | awk '{printf $1 "\t" ; for (i=2; i<=NF; i=i+2) printf $i "\t" ; print $i}' > ./merge.count
网友评论