0.简单介绍
稀疏非负矩阵(sNMF)和最小二乘优化来产生祖先比例估计数的祖先推断算法,这个算法呢与admixture来说差别不是很大,但是优点就是快,运算速度可以快到10-30倍左右。
1.安装
这一步不必多说,下载完成后直接./install.commd
即可,但是这个软件依赖gcc环境,因为是C语言开发的嘛,理所当然咯。
2.Create a data set with masked data In the main directory
./bin/createDataSet -x sheep.geno
创建好的默认屏蔽数据集是以默认5%,作为条件的。
3.sNMF计算
./bin/sNMF -x sheep_I.geno -K 5
4.交叉熵的计算
./bin/crossEntropy -x sheep.geno -K 5
接下来呢就是所对应的交叉熵K值
./bin/sNMF -x genotype_file.geno -K K -c
没错,这样就选择了。。。。
如果一堆参数没看懂,还是强烈推荐去看看官网文档,这个才是解决问题的唯一途径。
5.K值的选择以及绘图
我给出的是官网推荐的代码
##代码可以根据自己的数据自行修改
for K in 1 2 3 4 5 6 7 8 9 10
do
echo K=$K; ./sNMF -x new_F.geno -K $K -c > new_F.$K.log
done
##输出各K值的交叉熵
grep "Cross-Entropy (masked data):" new_F.*.log