一共有1035个文件夹(基因组),据说只有777个蛋白质,严格来说只有三个基因组是各自都有两个aa序列,昨天已经删除她们的就版本,于是筛选的话一共就只有777-3 = 774个基因组。
按照文件夹包含文件数量从小到达排序:
文件夹数目 数量
1 148
打印所有文件夹数量只有一个文件的脚本:
import os
mydir = 'fungi'
i = 0
for root, dirs, files in os.walk('fungi'):
for mydir in dirs:
i = 0
for root1, dirs1, files1 in os.walk('fungi/' + mydir):
filenum = len(files1)
if filenum == 1:
print (files1)
找到之后,查看结果,发现都只有Repeatedmasked.fasta.gz 或者 .masked.fasta.gz 结尾的文件,把他们都删掉,因为他们都只是基因序列,并不是蛋白质序列。
接下来去寻找文件夹里面没有蛋白质序列的文件夹:
import os
mydir = 'fungi'
i = 0
for root, dirs, files in os.walk('fungi'):
for mydir in dirs:
i = 0
for root1, dirs1, files1 in os.walk('fungi/' + mydir):
tag = 0
for onefile in files1:
if onefile.endswith(".fasta"):
tag = 1
break
if tag == 0:
print (mydir)
将没有蛋白质序列的文件移出去
import os
mydir = 'fungi'
i = 0
for root, dirs, files in os.walk('fungi'):
for mydir in dirs:
i = 0
for root1, dirs1, files1 in os.walk('fungi/' + mydir):
number = 0
for onefile in files1:
if onefile.endswith(".fasta"):
number = number + 1
if number ==0:
os.system('mv fungi/'+mydir+' fungi_without_aa/'+mydir)
于是就剩下774个基因组文件夹。这些文件夹有的没有gff文件,需要今后进一步进行筛选,目前还不清楚要不要筛选出来。
先把这774个基因组下面蛋白质的一些奇啪名字都改掉!!!
比如有一些叫做allModels.aa.fasta的,搞不清它是啥物种,赶紧改掉改掉!!!
1.把基因组目录下面的文件的文件名都改成物种文件名。
- 将所有的aa以_all字符串为分割字符,将All改成小写all.
接下来可以重新跑良玉的代码,跑完之后进入到跑diamond的阶段。