利用bwa将自己的数据与参考基因组比对与sam格式转换

news/2024/11/15 1:04:37/文章来源:https://www.cnblogs.com/wu8567612/p/18307849

1.bwa的下载与安装

https://www.jianshu.com/p/19f58a07e6f4
主要参考这篇帖子,如果之前的步骤都走通了的话,依赖什么的不用特别安装,报错了再补也可以

安好了之后,进到他的路径,输./bwa,就可以确认bwa有没有安装好了,环境设置好以后可以在其他地方输入bwa,也可以叫他出来。
在正式开始使用之前,注意建立索引index:
Usage:bwa index [ –p prefix ] [ –a algoType ] <in.db.fasta>
示例:
解释:
–p prefix :这是你的index的名字,或者说前缀,这个名字是你自己起的,我叫他ZS97genome
–a algoType :-a [is|bwtsw] 构建index的算法,有以下两个选项:
-a is 是默认的算法,虽然相对较快,但是需要较大的内存,当构建的数据库大于2GB的时候就不能正常工作了;
-a bwtsw 对于短的参考序列式不工作的,必须要大于等于10MB, 但能用于较大的基因组数据,比如人的全基因组。
<in.db.fasta>:这个是你先下载的基因组文件,记得写绝对路径
建立的过程就是这样,显示这样的东西就说明建立好了:

2.利用bwa将数据与参考基因组进行比对,获得sam文件

这里主要是使用bwa的 BWA-MEM 算法,输入命令:
Usage: bwa mem [options] ref.fa reads.fq [mates.fq]
解释范例:
bwa mem -M -t 8 -k 32 ZS97genome /root/bidui/SRR13810477_paired_1_R1_paired.fq.gz /root/bidui/SRR13810477_paired_1_R2_paired.fq.gz > SRR13810477-test.sam
[options]:这是一些按需求调节的参数,主要如下:
-t INT 线程数,默认是1,增加线程数,会减少运行时间。
-M 将 shorter split hits 标记为次优,以兼容 Picard’s markDuplicates 软件。
-p 若无此参数:输入文件只有1个,则进行单端比对;若输入文件有2个,则作为paired reads进行比对。若加入此参数:则仅以第1个文件作为输入(会忽略第二个输入序列文件,把第一个文件当做单端测序的数据进行比对),该文件必须是read1.fq和read2.fa进行reads交叉的数据。
-R STR 完整的read group的头部,可以用 '\t' 作为分隔符, 在输出的SAM文件中被解释为制表符TAB. read group 的ID,会被添加到输出文件的每一个read的头部。
-T INT 当比对的分值比 INT 小时,不输出该比对结果,这个参数只影响输出的结果,不影响比对的过程。
-a 将所有的比对结果都输出,包括 single-end 和 unpaired paired-end的 reads,但是这些比对的结果会被标记为次优。
-Y 对数据进行soft clipping, 当错配或者gap数过多比对不上时,会对序列进行切除,这里的切除并只是在比对时去掉这部分序列,最终输出结果中序列还是存在的,所以称为soft clipping。
ref.fa:这是你刚刚建立的index的名字
reads.fq:这是你用Trimmomatic处理出来的数据,记得用绝对路径

SRR13810477-test.sam:这就是你要输出的文件的文件名
特别说明:
如果 mates.fq 缺省,且参数 –p 未设定,那么 reads.fq 被认为是 single-end;
如果 mates.fq 存在,且参数 –p 未设定,那么 mem 命令会认为 read.fq 和 mates.fq 中的 i-th reads 组成一个read对 (a read pair),这个模式是常用的 paired-end mode。
如果参数 –p 被设定,那么, mem 命令会认为 read.fq 中的 第 2i-th 和 第 (2i + 1)-th 的 reads 组成一个 read 对 (a read pair),这种方式也被成为交错式的(interleaved paired-end)。 在这种情况下,即使有 mates.fq,也会被忽略。
过程主要是这个样子的:


处理完就会产生你想要的sam文件,当然也可以和samtools联用直接变成bam,不过第一次尝试就一步一步来吧
你可以在bwa的文件夹里找到你的sam文件,找不到就用find来找:
find / -name SRR13810477-test.sam

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/745315.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习 - Machine Learning (III)

1 对抗学习 对抗学习的目的是增加鲁棒性。 对抗生成网络(GAN)包括生成器(Generator)和判别器(Discriminator)。如果目标是创建能够生成新内容的系统,那么生成器是希望得到并优化的模型,这是一个零和问题。1.1 GenB GenB是对抗网络用于VQA的产物,如图添加了偏置模型和目…

VS运行出现此网站无法提供安全连接

场景: SVN获取项目出现冲突后进行处理。 VS运行页面出现此网站无法提供安全连接尝试:清理VS缓存、重启电脑、重启VS、删除项目重新下载、禁用SSL3.0等等(以上都无效) 理解:开启另一个项目运行正常,说明IIS没有坏;删除项目重新下载运行排除项目配置问题(WebConfig等)。…

「代码随想录算法训练营」第十三天 | 二叉树 part3

110. 平衡二叉树题目链接:https://leetcode.cn/problems/balanced-binary-tree/ 题目难度:简单 文章讲解:https://programmercarl.com/0110.平衡二叉树.html 视频讲解:https://www.bilibili.com/video/BV1Ug411S7my 题目状态:通过思路: 采用递归的方式,遍历每个节点的左…

京东云智能编程助手与安全大模型双双获奖!

人工智能大模型浪潮迭起,为更好地推广人工智能应用案例,中国通信工业协会及中国通信工业协会人工智能专委会近日发布《CCIA2023年度人工智能优秀案例》,京东云申报的Joycoder智能编程助手入选“AI技术创新应用”,京东云与深圳市信息安全管理中心联合申报的“安全大模型保障…

京东上万程序员都AI用它!

7月3日,中国信息通信研究院在全球数字经济大会上发布“2024安全守卫者计划优秀案例”,基于京东云智能编码工具JoyCoder研发的“京东微调大模型驱动漏洞修复”入选优秀案例。 该漏洞修复助手,能够对大模型生成代码进行智能修复,为程序员开启代码漏洞修复的“自动驾驶”模式,…

【YashanDB知识库】oracle dblink varchar类型查询报错记录

问题单:Oracle DBLINK查询崖山DB报错 oracle服务器上ODBC安装 unixodbc安装:yum -y install unixODBC mysql 配置安装对应版本的odbc: myodbc-installer -d -a -n "MySQL8.0" -t "DRIVER=/home/oracle/tools/mysql-connector-odbc-8.0.20/lib/libmyodbc8w.so…

以电商、消费行业为例,详解火山引擎数智平台如何应用湖仓一体架构

湖仓一体架构是一种将数据湖和数据仓库的优势结合起来的新型数据架构。作为新一代企业级数据产品,火山引擎数智平台在旗下产品中对湖仓一体架构进行深入探索和应用,本篇将从数据湖内核、服务设计及应用场景等方面进行详细拆解。更多技术交流、求职机会,欢迎关注字节跳动数据…

负载均衡-Ribbon-微服务核心组件【分布式微服务笔记03】

负载均衡-Ribbon-微服务核心组件【分布式微服务笔记03】 负载均衡-Ribbon 基本介绍Spring Cloud Ribbon 是基于Netflix Ribbon 实现的一套客户端负载均衡的工具。 Ribbon 主要功能是提供客户端负载均衡算法和服务调用 Ribbon 客户端组件提供一系列完善的配置项如连接超时,重试…

创建第一个flask程序,读取本地static静态文件

需要安装flask :  pip install flask 项目目录结构: 代码: from flask import Flaskapp = Flask(__name__,static_url_path=/static,static_folder=static)@app.route(/)def hello_world(): return Hello World!if __name__ == __main__: app.run(host="0.0.0.…

ComfyUI进阶:Comfyroll插件 (二)

ComfyUI进阶:Comfyroll插件 (二)前言:学习ComfyUI是一场持久战,而Comfyroll Studio 是一款功能强大的自定义节点集合,专为 ComfyUI 用户打造,旨在提供更加丰富和专业的图像生成与编辑工具。借助这些节点,用户可以在静态图像的精细调整和动态动画的复杂构建方面进行深入探…

zr 摆烂记

你说得对,我也不知道怎么整合到数数论论里。 \((a,b)=1\) 是 \(ax\equiv 1(\bmod b)\) 有解的充要条件。 首先,对于 \(x=0\rightarrow b-1\),\(ax\equiv y(\bmod b)\),\(y\) 互不相同。 证明考虑加加减减。 考虑求出这个解,得到 \(ax=by+1\)。 不难有推论:若 \((a,b)=1\)…

WKCTF RE

WKCTF so_easy 安卓逆向,关键的check逻辑都在native层里面主要是很多层的异或操作除了Z3和爆破想不到其他方法了 from z3 import *src = [ 0xAE, 0x81, 0xBA, 0xC1, 0xF0, 0x95, 0x0A, 0x54, 0x14, 0x03, 0x4A, 0xE2, 0x52, 0x4E, 0x84, 0xF8, 0xC9, 0x3E, 0x14, 0x98, 0x8F,…