实验记录 | somatic.pl的运行3

2023-11-30 09:40
文章标签 运行 记录 实验 somatic pl

本文主要是介绍实验记录 | somatic.pl的运行3,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

接2的程序,又报了一系列的错误,我们再次整理。

ERROR MESSAGE: Unable to retrieve result

ERROR MESSAGE: Could not read file /home/zxx/QBRC/human/tumor/tumor_intervals.list because The interval file does not exist.

ERROR MESSAGE: Could not read file /home/zxx/QBRC/human/tumor/realigned.bam because java.io.FileNotFoundException: human/tumor/realigned.bam (No such file or directory)

ERROR MESSAGE: Could not read file /home/zxx/QBRC/human/tumor/tumor_bqsr because it does not exist

使用谷歌搜索解决方案。
有如下:
参考链接:https://www.jianshu.com/p/dd60506b06a2

这是因为设置的VQSR这一步,numBad这个参数设置太大了,调低一些就可以了

另外一点线索的是:

GATK的版本的问题。旧版GATK已经不再维护(据说是这样)。

所以,针对于这种情况,我好像又走不通了(主要原因觉得是提供给搜索引擎的信息太少了)。
每一个步骤的执行是进阶式的,只有上一步走通了,下一步才会不报错。所以究其原因,我觉得是我对于源代码的理解还不是很够。

我想首先弄明白它这里的VQSR是什么?

Variant Quality Score Recalibration 突变质量重新校准。是gatk的一个关键性的步骤。

现在有两个解决的思路:
(1)着手理解somatic.pl的处理过程(感觉这套流程主要用的还要属GATK,我想知道它在其中是怎样的位置,负责处理什么?有哪些关键性的程序被放进程序包里了,而且是怎么被调用的)。
(2)着手理解GATK。

插播&更新
这个网站可能帮助我找到联系人的邮箱:
https://blog.csdn.net/weixin_44424296/article/details/114460923
https://github.com/Edison19991109
如果我能够联系到这个同学将会是事半功倍的。
jianning.18@intl.zju.edu.cn
主要用的代码,如下(在这里记录一下):
git clone https://github.com/Edison19991109/DST_Group_Project.git
cd DST_Group_Project/
git log
非常好用。感谢。
这些内容是留存给自己看的,所以写的时候就稍微随意了一些。有时候是多个文件并行处理的,就会忘记某个内容是写在那个文件中了。而且我也很怕命名,我觉得命名很难不重复。
2021/5/15

我尝试联系原作者以及之前学过这部分内容的前辈,杳无音信。所以,还是要靠自己才是。
生活是美好的,生命是美好的,要用自己的生命创造美丽的事。
2021/5/16
继续啃这部分的内容。

这个代码比我想象中的要复杂,看来需要重新捡起perl的知识点了。
如果早一点的看到源代码,也许并不需要之前花很多功夫用在配置环境上,因为突然发现这里很多软件的运行的重要模块都在它的路径之中。
现在,看代码是必由之路了。

结合代码以及出错的记录,才恍然醒悟自己原来在比对的环节就出了问题。除了一开始的这个文件缺少,那个文件缺少。现在也存在,作者一开始在这个压缩包里的文件本身就不是很全。指令常常缺乏。可能我现在也比较菜,对于这个未知的事物,一片茫然。但好在每天都有学到一些东西了,希望老师给我时间。关于,这个方面,我觉得我还需要一些建议。

现在突然对自己的评价很低,觉得自己真的是只有“名声”而没有真正实力的人。希望有一天,自己的实力能够和所在的学校匹配。XXX学校的人不差的。而我也好惭愧,觉得自己没能给家人一点支持,而他们又是如此的尊敬我。越想越有些难过。

以后的路要靠自己了,不要把自己看的那么重要。风啊雨啊,就来找我吧,我准备好了。
我觉得自己一直以来都在追赶,从来没有照顾好自己的心情。把自己的心情照顾好之后,做起事情会事半功倍。
让自己平静下来。

========================================================
bwa mem -v 1 -t 32 -a -M /home/zxx/QBRC/geneome/hg19/hg19.fa fastq1.fastq fastq2.fastq
报错说:

[E::bwa_idx_load_from_disk] fail to locate the index files

也就是说,缺乏参考基因组的索引。
在网上查了一圈出错的原因,没怎么看明白。
后来,去查了bwa的使用方法,突然醒悟到,是不是本身就需要建立索引呢?而确实是,自己没有建立索引。
于是,着手建立索引(是啊,比对的时候怎么能不建立索引呢?)。
bwa index -a bwtsw hg19.fa

[bwt_gen] Finished constructing BWT in 695 iterations.
[bwa_index] 3218.70 seconds elapse.
[bwa_index] Update BWT… Killed

我的索引配置完成了,需要较长的时间。
ls

hg19.dict hg19.fa.amb hg19.fa.bwt hg19.fa.pac
hg19.fa hg19.fa.ann hg19.fa.fai

其中,.amb.bwt.pac.ann,就是新配置完成的索引。
我们重新运行,看是否报同样的错误。

fail to open file ‘/home/zxx/QBRC/geneome/hg19/hg19.fa.sa’ : No such file or directory

缺少文件,是没有建立完全索引吗?
好,重新建立索引(13:09-14:03)。也就是说,建立一个索引,需要时间为一个小时。

[bwt_gen] Finished constructing BWT in 695 iterations.
[bwa_index] 3103.69 seconds elapse.
[bwa_index] Update BWT… Killed

是同样的错误,生成的文件中仍然没.sa文件。
参考链接:https://blog.csdn.net/mjy1757355155/article/details/103658745
显示说是ubuntu的内存不够。
我想看一下,最近因为安装各种软件,使用了多少内存,现在还剩多少空间。
df -h

/dev/sda7 65G 45G 20G 75% /

的确磁盘空间不太充足。
刚好,新的移动硬盘到了。我将fasta文件,重新移动到硬盘上,在这样大的空间中去运行。重新运行代码,看是否会报错。

出现了新的错误?怎么会?

[BWTIncConstructFromPacked] 360 iterations done. 3600000000 characters processed.
[BWTIncConstructFromPacked] 370 iterations done. 3700000000 characters processed.
[BWTIncConstructFromPacked] 380 iterations done. 3800000000 characters processed.
BWTIncConstructFromPacked() : Can’t read from hg19.fa.pac : Input/output error

参考链接:https://www.biostars.org/p/405187/

输入的这个目录没有读写权限。因此读取失败?

通过对命令进行核实,我发现我是有存储空间的。

参考链接:https://www.biostars.org/p/338017/
当程序意外停止的时候,可以注意查看log文件。这个作者遇到的问题,和我一模一样。

主要出错的原因是时间或者空间的限制。
提高空间的分配我能够理解,但是提高时间的限制怎么说?

最后,折腾了半天,终于破案了。
主要的原因:将内存与存储空间搞混了。
我一直想着可能是存储空间的限制,但是英文中的memory的意思其实是“内存”的意思。
所以,我明白了我的问题在什么地方了。
在这里插入图片描述所以,我的电脑也太菜了。
这是,我第一次关注到这个问题。
所以,还是从本质上暴露了自己一些计算机的基础很薄弱。基础,永远是自己向上发展的渠道。明白了进一步学习的方向。

更新进度(2021.6.2/9:49)。
在服务器中,重新运行指令,建立索引完成,终于终于,向前推进了一步。
所以,最终出错的原因,就是bwa比对的过程中,电脑的运行内存的受限。

展示最后的结果:
在这里插入图片描述

这篇关于实验记录 | somatic.pl的运行3的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/436549

相关文章

在Spring Boot中集成RabbitMQ的实战记录

《在SpringBoot中集成RabbitMQ的实战记录》本文介绍SpringBoot集成RabbitMQ的步骤,涵盖配置连接、消息发送与接收,并对比两种定义Exchange与队列的方式:手动声明(... 目录前言准备工作1. 安装 RabbitMQ2. 消息发送者(Producer)配置1. 创建 Spr

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

统一返回JsonResult踩坑的记录

《统一返回JsonResult踩坑的记录》:本文主要介绍统一返回JsonResult踩坑的记录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录统一返回jsonResult踩坑定义了一个统一返回类在使用时,JsonResult没有get/set方法时响应总结统一返回

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

java对接海康摄像头的完整步骤记录

《java对接海康摄像头的完整步骤记录》在Java中调用海康威视摄像头通常需要使用海康威视提供的SDK,下面这篇文章主要给大家介绍了关于java对接海康摄像头的完整步骤,文中通过代码介绍的非常详细,需... 目录一、开发环境准备二、实现Java调用设备接口(一)加载动态链接库(二)结构体、接口重定义1.类型

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb