本篇内容根据官方说明文档撰写,软件操作十分简单,所以内容不再特别详细的介绍。
DeepBSA是一种用于解析复杂性状的创新Bulked Segregant Analysis(BSA)软件。DeepBSA中开发了两个全新的算法,分别称为深度学习(DL)和k值(K),可以应用于至少2个被混合的群体。DeepBSA还集成了五种广泛使用的算法,分别是ED、G'、ΔSNP-index、SmoothLOD和Ridit,在文章的模拟实验中,DL的绝对偏差和信噪比都优于其他方法。最新更新的DeepBSA提供了Windows和Linux两个版本,下载链接为:http://zeasystemsbio.hzau.edu.cn/Tools。
Windows版DeepBSA
DeepBSA的运行需要R。在下载并解压DeepBSA_windows_v1.4后,用户可以进入名为deepbsa的文件夹,双击R-4.2.1-win.exe将R安装到"C:\Program Files"目录下。然后,如果R安装正确,双击deepbsa.exe,软件界面会如下所示。
输入文件
用户可以点击“打开”来加载输入文件(步骤1)。目前,仅支持标准VCF文件和相应的CSV文件(示例输入文件提供在名为Demo的文件夹中)。
注意:(1)VCF文件可选无头部,但建议仅保留染色体数据,序列区域应被删除;
(2)VCF文件中仅需要混合组数据,父本数据应被删除。同时,如果存在多个组,应根据表型进行排序;
(3)不支持压缩文件。
该软件提供输入数据的预处理功能。预处理包含内置程序来删除质量较低的SNP,并删除其读数低于自定义数字(建议自定义数字为测序覆盖度的一半)的SNP(步骤2)。此过程将花费一些时间,取决于数据大小和计算机性能。同时,可用(步骤3)。
方法选择和运行
在QTL检测中提供了七种算法,用户可以选择其中一种方法(步骤4)。同时,还可以使用三个自定义参数-平滑函数、窗口大小和阈值(步骤5)。
➢ 平滑函数:提供了三种拟合方法-三核平滑、LOWESS和移动平均。默认设置为三核平滑。
➢ 窗口大小:用于拟合的窗口大小。默认设置为0,表示使用loess.as()的自动调优得到的最佳参数。可选的取值范围为0-1,例如0.5表示使用50%的SNP进行局部拟合。0.1是经验值,而0的结果不好。
➢ 阈值:在拟合线超过此值时,将提取候选QTL区域。 默认设置为0,表示该阈值高出全基因组中位数三个标准偏差。 设置完后,点击"RUN"来进行QTL的定位(步骤6)。
注意:只有DL和Ridit可以应用于多池数据,所以在运行来自多个池的数据时,其他方法只从VCF文件中的第一个和最后一个池获取信息。
输出结果
输出结果以两种方式呈现,如下所示——映射图和候选区域。
可以通过点击图表来查看详细信息。
同时,结果被保存在本地 deepbsa/**_Visualize_Results/文件夹中。图表以PNG PDF格式保存,QTL信息以CSV格式保存。开发者还提供了一个TXT文件,其中包含所有SNPs的位置和对应方法的值,可以用于进一步分析和绘图。
其他功能
该软件还提供了一个模拟器,通过点击名为“Simulate”的按钮生成模拟数据。可以按照以下方式自定义四个参数。
➢个体数:种群中的模拟个体,代表了下次野外实验的种群规模;
➢池数:模拟的混池数,范围从2到10;
➢比值:每个池的植株比例,因此应满足以下条件:比值*池数<1;
➢有效点数:模拟的qtl数,假设其表型变异效应(PVE)为0.1。
生成的模拟数据保存在deepbsa/ --*/中,可以直接作为下一次映射的输入数据加载。结果图如下所示:
Linux版DeepBSA
命令行也很简单,步骤和软件版类似:
#安装
wget -c http://zeasystemsbio.hzau.edu.cn/Tools/DeepBSA_linux_v1.4.tar.gz
tar -xvzf DeepBSA_linux_v1.4.tar.gz
cd DeepBSA_linux_v1.4/
./requirment.txt
#QTL mapping
cd bin/
python3 main.py -h
#usage: main.py [-h] --i I [--m M] [--p P] [--p1 P1] [--p2 P2] [--p3 P3] [--s S] [--w W] [--t T]
optional arguments:
-h, --help show this help message and exit
--i I The input file path(vcf/csv).
--m M The algorithm(DL/K/ED4/SNP/SmoothG/SmoothLOD/Ridit) used. Default is DL.
--p P 是否预处理数据(1[True] or 0[False]). Default is True.
--p1 P1 预处理第一步: reads支持数, 过滤低于该值的SNP位点. Default is 0.
--p2 P2 预处理第二步: 卡方检验(1[True] or 0[False]). Default is 1[True].
--p3 P3 预处理第三步: 连续性检验(1[True] or 0[False]). Default is 1[True].
--s S 结果平滑处理函数选择(Tri-kernel-smooth\LOWESS\Moving Average), Defalut is LOWESS
--w W LOESS窗口大小。该数字的取值范围为0-1。0表示AICc最小的最佳大小. Default is 0(auto).
--t T 阈值. Default is 0(auto)
#Data simulation
cd DeepBSA_linux_v1.4/bin/
python3 simulate_progress.py -h
#usage: simulate_progress.py [-h] --i I --p P --r R --e E --s S
optional arguments:
-h, --help show this help message and exit
--i I individual
--p P pools
--r R ratio
--e E effective points
--s S save path
参考资料
Li Z., Chen X., Shi S., Zhang H., Wang X., Chen H., Li W., and Li L. (2022). DeepBSA: A deep-
learning algorithm improves bulked segregant analysis for dissecting complex traits. Mol. Plant.
doi: https://doi.org/10.1016/j.molp.2022.08.004.