问题标签 [bam]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
187 浏览

python - 如何使用 pysam.view() 将 SAM 转换为 BAM

我想使用pysam库将我的 SAM 文件转换为 BAM。我正在尝试从 samtools 编写此命令:

作为这样的python代码:

根据本文档。但不幸的是,它不起作用。我该怎么做?我应该先创建一个空的 BAM 文件还是自动创建它?最后我有这个错误:

SamtoolsError: 'samtools 返回错误 1: stdout=b'\x1f\x8b\x08\x04\x00\x00\x00\x00\x00\xff\x06\x00BC\x02\x004\x01\x9dQMO\x83@\x10 \xa5G\xfa#\xccz\xb3\x87\xfd\xa2\xa0\x86\x83\xa9\xad\xd86i\t\x16\xc3u\xb3P\xc0&,PvcC\xff\xa6\x7f\xc8\xc5\ x88&\xe8\xc1xx\x99\xc9\xbcyy\x937\xf3\xfb\xed\xe8md\x18\xb3\xf0\xc9\x0c}\xd7"\x90\x90)a\xa1\xc5\xe8.\xcdX \xd2&\x8cPv\xb9\xf2"\xb8\x8av\xac\xac\xd6\xa5L\x1ben\xf4\xee\xed\xf5x\x16,\xcd\xf5\x83\x1b\x9f\xb8\x19\xf8 \x1f%\xf2]\x82n\x10u`C\xa9M\xcc\xc5\xa6\x1b\x03\x91\n\x00\x95E\x00\x9c[\x00>;\x00\xcb\xa4\xe1* y\xc1\xbcP\x82\x97e\x8c\xfde\xc8\x1e\x97\xd4\xc1\xbd\x99\x97W\r\x1e\\\x84\x89\xcd\x9a\x94\xef%\x13 \xbc\xae\xd3=\xde\xf2z\xd1&\x84~5l\xa0@\x19\x97\x8a\xff\xdfo\xfa\xe9\x97\x1dJ^\x0ci\x16z(;\xa2\xfc\ xdc\'!\xb9PUU\xc8.\x8e\xef>\xe8\xa3\xa1\x88\x12pU\xb7\x9a\x9at\xd1\xf4+\xe0\xf5\x90\x9e\x00\x0c\x01\x8c\x01\xac\x00V\xa2\xee\x10g\xb6 <\xe6\x9a\xfei\x1bxH\x8b\xc1\xdd\xefT\xcc\xc5X\x7f\xd5\x98h\xfc\xf5\xa7\xc6\x85V\xbc\x03\xb7nn4\x10\x02\x00\ x00\x1f\x8b\x08\x04\x00\x00\x00\x00\x00\xff\x06\x00BC\x02\x00\x1b\x00\x03\x00\x00\x00\x00\x00\x00\x00\ x00\x00', stderr=[main_samview] 随机对齐检索仅适用于索引 BAM 或 CRAM 文件。\n'

先感谢您!

0 投票
0 回答
34 浏览

throttling - 是什么限制了我的“Parallel.For”应用程序?

使用 VS2019、C#.net 5.0 我编写了一个应用程序,它使用两个嵌套的 Parallel.For 计算 16000 点到 16000 点的距离矩阵:

它在第一次运行时以 77%-99% 的 CPU 负载运行。它在 Computer\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\bam\State\UserSettings\ 中注册了 EXE 的位置 在第二次运行时,它不允许 CPU 负载超过 20%。如果我移动项目目录,应用程序会在 %99 再次运行一次。我认为它受到Windows的限制。如何以 99% 的 CPU 负载运行它?

我卸载了防病毒软件。

视窗版:

Windows 10 Home Single Language Version 21H1 安装在 ‎21/‎11/‎2020 OS build 19043.985 Experience Windows Feature Experience Pack 120.2212.2020.0

电源选项,高级设置,

处理器电源管理

最低处理器状态:电池供电:100% 插入电源:100%

系统冷却策略: 使用电池:激活 插入:激活

最大处理器状态:电池供电:100% 插入电源:100%

0 投票
0 回答
42 浏览

linux - Bam 文件的排序运行非常缓慢

我正在尝试使用 samtools 排序功能对一个不大的 bam 文件(命名为 PT2)(大小 180 兆)进行排序。排序永远不会结束,也不会出现错误消息。我已经使用(家庭帐户的 proc 文件夹中的 meminfo 文件)检查了 VM Ubunto 的内存。我还有大约 80 个演出磁盘空间

第一个代码:samtools sort -o outputs/PT2_sorted.bam outputs/PT2.bam(非常慢wwww)

第二个代码:samtools sort -o outputs/PT2_sorted.bam outputs/PT2.bam(非常慢)

您认为这种缓慢工作背后的原因是什么?有什么建议吗?

谢谢

0 投票
0 回答
77 浏览

awk - 为什么在 grep 之后特定行的“samtools view”会被破坏?

我想提取读取名称列表,其中一个是唯一映射的,另一个是多映射的。

但是,经过一些尝试和错误,我发现

第一个生的

总是这样坏:

或者像这样:

(即部分 sam 文件行)

我怀疑bam文件本身坏了,然后我做

但它正常返回

是否有任何理由插入“句末”或其他工作人员?

先感谢您,

[修改问题]

感谢您的友好指导和解释。

好的,我重新解释一下情况。由于原始文件很重,我无法掌握许多工具所做的整个过程,所以让我解释一下。

“samtools view”命令采用 .bam 或 .sam 文件并返回超过 11 个以 \t 作为分隔符的字段。

我想用“XS:i:”提取行,所以“grep XS:i:”和 awk '/XS:i:/' 都可以。

尽管预计每个完整的行都将输出,但已经出现了具有完整字段集的行。

从另一个试验中,我可以理解该行没有损坏,我想知道这是因为 samtools 或 grep 和/或 awk。

是否可以通过 grep 或 awk '/' 部分提取太长的行?? 谢谢大家,我知道 grep -q 不适合我的目的。

0 投票
0 回答
34 浏览

r - 从 BAM 文件中提取读取名称和特定位置上的相关核苷酸(在 R 中)

假设我有一个 BAM 文件和几个位置,我想在此对齐中更仔细地检查它们。我的目标是找出这些位置是否在相同的读数上,以及每个读数在这两个位置上有哪些核苷酸。所以我的输出应该是在位置上出现的所有读数的表格,并列出相关的核苷酸。

输出应如下所示(前三个位置为 980、1350 和 1400;我组成了读取名称):

读名字 980 1350 1400 ...
ReAdN4m1L03 一个 ...
ReAdN4m2L02 一个 G ...
ReAdN4m3L01 G ...
... ... ... ... ...

最后,我想要一张通过读数连接核苷酸的表格。

到目前为止,我已尝试在所需位置读取 Bam 文件:

使用以下代码,我可以访问读取,但是如何在各个位置获取相应的核苷酸?

我已经尝试使用aln[[i]]$cigar带有序列的 CIGAR 字符串aln[[i]]$seq来手动提取核苷酸,但这导致了越来越多的问题。

有没有什么简单的方法可以提取核苷酸?

我现在在互联网上搜索了很长时间,以寻找一个简单的解决方案,但没有成功。希望有人会在这里帮助我!非常感谢您提前抽出时间。

0 投票
0 回答
30 浏览

python - Python 和 Ubuntu 中带 parseargs 的 Bam 文件处理函数代码

我正在尝试修改一段代码来提取 bam 文件中特定元素的信息。

这是我到目前为止所拥有的:

我得到的错误是:

ValueError: Length mismatch: Expected axis has 1 elements, new values have 3 elements

这是在我在函数全局变量中创建所需文件之后。之前,我得到的错误是:

TypeError: count_bam() missing 3 required positional arguments: 'bed_file', 'output', and 'genome_sizes'

我觉得这与argparse有关。它读取第一个必需的参数(bamfile),但不注册其他 3 个。

任何帮助将不胜感激。

0 投票
0 回答
39 浏览

r - 使用 Google Colab 将 BAM 文件转换为 FASTQ

我正在尝试将 BAM 文件从 Ion Amplicon 测序转换为 FASTQ 文件。我正在使用谷歌协作。我将在 R 中将 FASTQ 文件用于管道 DADA2。任何帮助将不胜感激。

0 投票
0 回答
42 浏览

samtools - velocyto.py 生成的 loom 文件中不包含线粒体基因

我通过 velocyto.py 将 10X bam 文件传输到 loom 文件中,并使用 Scanpy 进行细胞聚类。但是,当我用 Scanpy 进行数据处理时,我发现 loom 文件中没有 mito 基因,见下文。 在此处输入图像描述

运行 velocyto.py 时,它显示:“警告 - .bam 文件引用注释 (.gtf) 文件中不存在的染色体 'MT+'” “警告 - .bam 文件引用染色体 'MT-' 不存在于注释 (.gtf) 文件中”

BAM 文件来自 Cell Ranger v3.1 生成的 10X。参考基因组是 10X 的 refdata-gex-mm10-2020-A.tar.gz。重复注释文件是来自 UCSC 的 mm10_rmsk.gtf。

是不是因为 cell ranger v3.1 太旧,没有与 refdata-gex-mm10-2020-A.tar.gz 和 mm10_rmsk.gtf 相同的染色体名称?但是当我检查BAM中的染色体名称时,我发现它是ChrM,与refdata-gex-mm10-2020-A.tar.gz和mm10_rmsk.gtf一样?那么为什么提示显示 .bam 文件指的是染色体“MT-”?

这是检查 bam 中染色体名称的代码。$ samtools 查看/home/hyjforesight/mybam.bam | 切-f3 | perl -ne '打印除非 $seen{$_}++' - chr1 chr10 chr11 chr12 chr13 chr14 chr15 chr16 chr17 chr18 chr19 chr2 chr3 chr4 chr5 chr6 chr7 chr8 chr9 chrM chrX chrY

0 投票
0 回答
15 浏览

indexing - 可视化具有多个基因组的 ba​​m 文件

我想可视化具有多个基因组的 ba​​m 文件。我使用 samtools 对其进行了排序,并得到了一个索引文件。

我首先尝试了 Qualimap,但是当生成跨参考的覆盖范围时,结果并不好,因为值在轴末端重叠。随附的

我需要获得更好的可视化。我使用了各种工具,IGV、GenomeWorkbench 甚至 ngscat,但其中很多工具不接受我的 bam 文件,因为它有几种/多种类型的基因组(病毒和人类)。我需要一个可以接受它并给我一个更清晰的图表的工具

谢谢!

0 投票
1 回答
8 浏览

python - 从 bam 文件中的 Cigar 字符串计算每个外显子的大小

我有一个 bam 文件,我想计算每个外显子的大小:例如,我有 6 根雪茄串

我想要输出:

这是我的脚本,但它只适用于前三个雪茄圈,我不知道如何才能得到正确的输出

我的脚本的输出: