#disk-space #bioinformatics #read #mapping #long #long-read #filter

app fpa_lr

fpa 过滤长读长比对信息以节省磁盘空间

7 个版本 (4 个重大变更)

0.5.1 2020 年 5 月 26 日
0.5.0 2019 年 5 月 14 日
0.4.0 2019 年 2 月 14 日
0.3.0 2018 年 10 月 16 日
0.1.1 2018 年 10 月 9 日

#147 in 生物学

36 每月下载次数

MIT 许可证

105KB
2K SLoC

fpa 配对比对过滤器

Build Status

过滤所有对读比对输出,您可以过滤或选择要写入输出的重叠

  • 内部匹配
  • 包含
  • 接合
  • 自我匹配
  • 读取名称与正则表达式匹配
  • 重叠长度
  • 重叠中读取长度

关于内部匹配、包含、接合的定义,请参阅minimap 文章中的算法 5

原理

长读比对工具提供了他们在读数据集中找到的所有匹配项,对于许多用途,其中一些匹配项可能不是很有用,这个程序提供了一些过滤器来删除它们。此软件可以用 awk、bash、python、perl、{您喜欢的语言} 中的简单脚本来替代。

更多细节和一些实验可以在这篇博客文章中找到。我们评估了 fpa 过滤器对 miniasm 组装的影响,您可以在此存储库中找到脚本以及如何获取真实数据集的方法。

用法

fpa -i <input> -o <output> <option> <subcommand: drop | keep | index | rename | gfa>

子命令可以分为两组

  • 过滤器(删除、保留),选择要写入输出的重叠
  • 生成器(索引、重命名、gfa),从重叠生成新数据

默认情况下,输入和输出是 stdin 和 stdout,因此您可以像这样使用它

minimap2 long_read.fasta long_read.fasta | fpa keep -d | gzip - > only_dovetail.paf.gz
minimap2 long_read.fasta long_read.fasta | fpa drop -l 500 -L 2000 > only_between_500_2000.paf
minimap2 long_read.fasta long_read.fasta | fpa drop -m -n read_1 > no_self_no_match_read_1.paf
minimap2 long_read.fasta long_read.fasta | fpa drop -m rename -o rename.csv > no_self_match_renamed.paf
minimap2 long_read.fasta long_read.fasta | fpa drop -m rename -o rename.csv gfa -o no_self_match_renamed.gfa > no_self_match_renamed.paf
minimap2 long_read.fasta long_read.fasta | fpa drop -l 500 index -t query -f match_upper_500.paf.idx query > match_upper_500.paf
minimap2 long_read.fasta long_read.fasta | fpa -o match_upper_500.paf.bz2 -z bzip2 drop -l 500 index -f match_upper_500.paf.idx -t target 

生成器

只有通过过滤器的映射才会由生成器分析

重命名

重命名子命令用另一个名称替换读取的名称。

如果您使用 -i 选项,文件将作为两列 csv 文件读取,第一列是原始名称,第二列对应于新名称

original name1, new name1
original name2, new name2

如果读取的名称在文件中不存在,则不会替换。

如果你使用 -o,名称将自动替换为一个数字,就像上述示例中创建的文件。

索引

fpa 可以根据文件中读取出现的位置构建记录偏移量索引。

索引文件看起来像这样

read_id1, start_of_range_1:end_of_range_1; start_of_range_2:end_of_range_2;…
read_id2, start_of_range_1:end_of_range_1; start_of_range_2:end_of_range_2;

fpa 仅在它是查询(记录中的第一次读取)或目标(记录中的第二次读取)或两者同时存在时才进行索引。

Gfa

fpa 可以使用重叠过滤生成重叠图

要求

  • Rust >= 1.32
  • libgz
  • libbzip2
  • liblzma

安装

使用 cargo

如果你已经设置了 Rust 环境,你可以运行

cargo install fpa_lr

使用 conda

fpa 可在 bioconda 频道 中获取

如果已设置 bioconda 频道,你可以运行

conda install fpa

从源代码

git clone https://github.com/natir/fpa.git
cd fpa
git checkout v0.5.1

cargo build
cargo test
cargo install

引用

如果你的研究中使用了 fpa,请引用以下出版物

Pierre Marijon, Rayan Chikhi, Jean-Stéphane Varré, yacrd and fpa: upstream tools for long-read genome assembly, Bioinformatics, btaa262, https://doi.org/10.1093/bioinformatics/btaa262

bibtex 格式

@article {@article{Marijon_2020,
	doi = {10.1093/bioinformatics/btaa262},
	url = {https://doi.org/10.1093%2Fbioinformatics%2Fbtaa262},
	year = 2020,
	month = {apr},
	publisher = {Oxford University Press ({OUP})},
	author = {Pierre Marijon and Rayan Chikhi and Jean-St{\'{e}}phane Varr{\'{e}}},
	editor = {Inanc Birol},
	title = {yacrd and fpa: upstream tools for long-read genome assembly},
	journal = {Bioinformatics}
}

依赖关系

~11MB
~166K SLoC