生物信息学工具将转换器输出到json或yaml。

Crimson的Python项目详细描述


深红色

cicoveragepypi

crimson将非标准生物信息学工具输出转换为json或yaml。

目前它接受以下程序的输出:

从中,您可以将相应的输出文件转换为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。

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

推荐PyPI第三方库


热门话题
java如何将cassandra中的行数据转换为与列相关的嵌套json   java如何使用jcr XPath在jcr:content/@jcr:data中搜索?   java在使用openCV进行安卓开发时如何利用手机的广角镜头   java解析扩展了接口,结束了一个潜在的无限循环   位置服务的@Override方法中存在java Android应用程序错误   java本地线程的用途和需求是什么   具有左右子访问的java节点树遍历   java验证JsonWebToken签名   JUL日志处理程序中的java日志记录   嵌入式Java读取给定时间段的串行数据。   java有没有办法从多个URL获取多个图像?   java线程通过等待intent阻止自己发送intent   java Spring MVC解析多部分内容请求   java JPA/Hibernate静态元模型属性未填充NullPointerException   java格式错误的字符(需要引号,得到I)~正在处理   java为什么PrintWriter对象抛出FileNotFoundException?   java Neo4j未正确保存标签   java IE不加载图像