生物信息学工具将转换器输出到json或yaml。
Crimson的Python项目详细描述
深红色
crimson将非标准生物信息学工具输出转换为json或yaml。
目前它接受以下程序的输出:
- FastQC(^{TT1}$)
- FusionCatcher(fusioncatcher)
- samtools标志状态(flagstat)
- Picard度量工具(picard)
- STAR日志文件(star)
- STAR-Fusion命中表(star-fusion)
- Variant Effect Predictor纯文本输出(vep)
从中,您可以将相应的输出文件转换为json(默认)或yaml。您也可以使用crimson 在脚本中导入解析器函数本身。
安装
crimson可以通过python包索引获得,您可以通过pip:
$ pip install crimson
它在Python2.7、Python3.3和Python3.4、Python3.5、Python3.6、Python3.7上进行了测试,并针对以下内容 生物信息学工具:
- FastQC(0.10.1版)
- FusionWatcher(0.99.5a版)
- samtools(版本0.19.1,1.1)
- picard(1.124版)
- 星形(2.3.0版)
- 星融合(0.6.0版)
- VEP(版本77)
使用量
命令行
一般命令是crimson {program_name},默认情况下,输出被写入stdout。例如, 要使用picard解析器,您需要执行:
$ crimson picard /path/to/a/picard.metrics
也可以直接指定要写入文件的文件名。以下命令将输出写入文件 命名为converted.json:
$ crimson picard /path/to/a/picard.metrics converted.json
一些解析器也可以接受额外的输入格式。例如,如果给fastqc解析器一个 fastqc输出目录的路径:
$ crimson fastqc /path/to/a/fastqc/dir
或压缩结果的路径:
$ crimson fastqc /path/to/a/fastqc_result.zip
如果有疑问,请使用--help标志:
$ crimson --help # for the general help $ crimson fastqc --help # for parser-specific (FastQC) help
python模块
要导入的函数位于crimson.{program_name}.parser。所以要在脚本中使用picard解析器, 您可以这样做:
fromcrimsonimportpicard# You can supply the file name as string ...parsed=picard.parse("/path/to/a/picard.metrics")# ... or a file handle directlywithopen("/path/to/a/picard.metrics")assrc:parsed=picard.parse(src)
为什么?
- 没有足够的工具使用标准输出格式。
- 在不同的脚本中编写和重新编写相同的解析器并不是一种高效的消磨时间的方法。
贡献
如果您感兴趣,Crimson接受以下类型的贡献:
- 文档添加(如果有不清楚的地方,请随时提出问题)
- 错误报告
- 支持可以转换为json或yaml的工具输出。
对于其中任何一个,可以在 issue tracker或提交请求。
地方发展
设置本地开发需要任何受支持的python版本。如果您支持python 2.x 以及安装的3.x版本,因为这将允许您使用tox对所有版本运行完整的测试套件。
在任何情况下,以下步骤都可以作为设置本地开发环境的指南:
# Clone the repository and cd into it $ git clone {repo-url} $ cd crimson # Create your virtualenv, using pyenv for example (recommended, https://github.com/pyenv/pyenv) $ pyenv virtualenv 3.7.0 crimson-dev # or using virtualenvwrapper (https://virtualenvwrapper.readthedocs.io/en/latest/) $ mkvirtualenv -p /usr/bin/python3.7 crimson-dev # From within the root directory and with an active virtualenv, install the dependencies and package itself $ pip install -e .[dev]
许可证
Crimson获得BSD许可。有关完整许可证,请参阅LICENSE文件。
更改日志
版本0.4
发布0.4.0
发布日期:2018年7月25日
- 添加对分析压缩fastqc结果的支持。
- 改进了对压缩fastqc输入的检测。
- 为flagstat、picard和fastqc设置可配置的文件大小限制。
版本0.3
发布0.3.0
发布日期:2016年5月19日
- 添加对分析FusionCatcher最终融合基因文件的支持。
版本0.2
发布0.2.0
发布日期:2016年4月13日
- 添加对解析星型融合命中表输出的支持。
- 添加对解析星型对齐日志输出的支持。
- 添加对解析vep纯文本输出的支持。
版本0.1
发布0.1.1
发布日期:2016年2月2日
- 小版本放松了轮子依赖版本,更新了一些 开发依赖项,并修复一些错误。
释放0.1.0
发布日期:2015年7月27日
- 第一次释放。
- 支持分析fastqc、samtools flagstat和picard。