分割放大器序列

divide-seq的Python项目详细描述


加入你和_拆分.py在

连接和拆分fastq文件的助手。在

需要Python3.6或更高版本。在

使用

# Linux
## split
python3 join_and_split.py split -m fastq_file
## join
python3 join_and_split.py join -f forward.fastq -r reverse.fastq
# Windows
## split
python join_and_split.py split -m fastq_file
## join
python join_and_split.py join -f forward.fastq -r reverse.fastq

使用-t设置链接器文本,默认情况下程序使用“JOINTEXT”。在

拆分时,“fastq_file”可以是多个文件,请使用“*.fastq”(include 引号)表示当前文件夹中的所有“.fastq”文件。在

在除法.py在

用条形码和底片对不良数据进行划分。在

先决条件

  • Python 3.5或更高版本
  • 生物赛顿
  • 正则表达式
  • vsearch(可选)

要安装Biopython和regex,请以管理员身份运行:

pip install biopython regex

变更日志

4.6版

支持不明确的基。在

4.5版

扩展vsearch选项。 提高产量

4.2版

集成vsearch。在

4.0版

使用regex而不是BLAST。更快更容易。在

3.3版

并行版本,使用BLAST。在

v2.1

单核版本。使用爆破。在

v1.0

已弃用。在

结构序列

它可以像这样处理合并的对端序列:

barcode-adapter-primer-sequence-primer-adapter-barcode

或者只处理一个方向:

barcode-adapter-primer-sequence

序列将根据给定的条形码文件被条形码分割。 如果条码错误,哪怕只有一个基地,它将被丢弃。在

适配器

有人在条形码和底漆之间添加了序列,如果您没有它,只需 通过“--adapter 0”将适配器长度设置为零。默认值为14。在

条形码模式

使用“-m”设置条形码模式,如“8*1”,表示长度为5次重复的条形码 只有一次。默认为“5*2”,即5基条码重复两次。在

请注意,正向和反向条形码的顺序可能不同,但它们 应该遵循相同的模式!

严格选项

使用“-s”或“-strict”可使用strict版本。如果设置,程序将检查 头、尾条码是否相等,尾部条码(3’)是否相等 对的。否则,它将只检查序列头(5')中的条形码。在

条形码文件

条形码文件如下所示:

sample,barcode-f,barcode-r

S0001,ATACG,ATACG

S0002,ATATA,TATAC

S0003,ATACG

...

barcode-f表示5'方向的条形码,barcode-r表示 3'方向。所有序列都应该是forward。在

如果正向条码和反向条码相同,则可以在中省略反向条码 桌子。在

为了避免潜在的错误,请不要在sample info中使用空格。在

注意这里使用^{str1}$English comma分隔两个字段 而不是中文逗号。在

底漆锉

Primer文件如下所示:

gene,forward,reverse

rbcL,ATCGATCGATCGA,TACGTACGTACG

matK,AAAATTTTCCCC,GGGGTTACCAAAA

...

或者:

gene,sequence

rbcL-f,ATCGATCGATCGA

rbcL-r,TACGTACGTACG

您可以使用Microsoft Excel准备这两个文件并保存为CSV格式, 或者使用您喜欢的任何文本编辑器。在

确保不要错过第一行。

在任务.sh在

如果使用PBS任务提交系统,则可以使用此脚本提交 任务,你可以通过flash和join从两个方向的组合序列中完成工作_快速Q.py把他们分开。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java 安卓阻止编译的第三方库的特定网站   java如何使用带回调的send()方法返回元数据?   将双值数组从一个java类传递到另一个java类   java OracleJava7安装程序返回错误代码   smb共享上新创建的Java文件没有用户,也没有组   打印unicode值而不是字符串的Java程序   java将字符串放在括号中的语法意义   java将对象添加到arraylist,除非它已经存在   java正在尝试查找回文数   java如何解决“过时元素引用:导航到上一页时元素未附加到页面文档”   java从无关方法调用超级方法   用于java代码的socket网络设置,以便不同网络/位置上的两台计算机可以使用RMI   用Java字符数组处理C字符数组