在把序列合并起来以后,如果要用于建树的话,一般在此之前建议看一下序列的常规指数,比如序列的长度、序列的配对相似度、序列的有效信息位点、还有序列的相对成分变异性,看看这些序列都是否适合用于系统发育树的构建。下面是计算这些之恶表的代码,我个人还是挺常用的,但是这个没有使用多线程速度会稍慢,以后更改出多线程版本应该就会快很多了。
# 计算序列长度、配对相似度、有效信息位点占比、相对组成变异
# 在seq_stats.txt文件的第一行写入表头
echo -e "File\tAlignment Length\tPairwise Identity\tParsimony Informative Sites\tRelative Composition Variability" > seq_stats.txt
# 循环遍历所有以.gb结尾的文件
for i in *.gb;do
# 在每一行的开头写入文件名
printf "%s\t" ${i} >> seq_stats.txt
# 计算alignment length,并写入第二列
phykit alignment_length ${i} | awk '{print $NF}' | xargs printf "%s\t" >> seq_stats.txt
# 计算pairwise identity,并提取mean的值,写入第三列
phykit pairwise_identity ${i} | awk '/mean/ {print $NF}' | xargs printf "%s\t" >> seq_stats.txt
# 计算parsimony informative sites,并提取第三个值,写入第四列
phykit parsimony_informative_sites ${i} | awk '{print $NF}' | xargs printf "%s\t" >> seq_stats.txt
# 计算relative composition variability,并写入第五列
phykit relative_composition_variability ${i} | awk '{print $NF}' | xargs printf "%s\n" >> seq_stats.txt
done