您的位置:首页 > 大数据 > 人工智能

将 paired count 和unpaired count 相加

2015-08-31 13:02 351 查看
尝试 count-based 算表达量过后,因为在map这一步一直是把过滤过后的paired 和unpaired reads 一起做的,后面count的时候就要出问题。发现可以用 samtools 从 bam 里分出来,于是就分开count,最后把reads 数相加。在用DESeq什么的。

首先,记下 samtools 命令

samtools view -bf  -1 all.bam > paired.bam
samtools view -bF -1 all.bam > unpaired.bam


然后是用上次那个提取1,6列的程序,现在就相加:

def readf(filename):
lines = open(filename,'r').readlines()
s=[]
for i in lines:
i=i.rstrip('\n')
i_ = i.split('\t')
s.append(i_[1])
return s

s_unpaired=readf("unpaired.txt")
print(s_unpaired)
f=open('paired.txt','r')
file=open('out.txt','w')
i=0
head='Geneid\tcount\n'
file.write(head)
for lines in f.readlines():
lines=lines.rstrip('\n')
line=lines.split('\t')
#print(line[0])
if(i>0):
line[1]=int(line[1])+int(s_unpaired[i])
print(line)
final=line[0]+'\t'+str(line[1])
file.write(final+'\n')
i+=1
file.close
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: