跳转到主要内容

Cryo-EM、Cryo-ET和子tomogram平均数据IO中心。

项目描述

cryohub

cryohub是一个基于cryotypes规范的Cryo-ET数据读取和写入库的库。

安装

pip install cryohub

使用

cryohub提供了一些粒度化的I/O功能,如read_starread_mrc,这些都将返回符合cryotypes规范的对象。

from cryohub.reading import read_star
poseset = read_star('/path/to/file.star')

一个称为read的高级函数为IO过程添加了一些魔法,猜测文件格式并返回一个cryotypes列表。

from cryohub import read
data = read('/path/to/file.star', '/path/to/directotry/', lazy=False, name_regex=r'tomo_\d+')

请参阅每个函数的帮助以获取更多信息。

类似于read_*函数,cryohub提供了一系列write_*函数和一个魔法高级write函数。

from cryohub import write
write([poseset1, poseset2], 'particles.tbl')

从命令行

cryohub可以用作所有可用格式之间的转换工具

cryohub convert input_file.star output_file.tbl

如果您只需要快速检查数据,但又希望比仅读取文本文件或标题更强大的功能,此命令将带您进入ipython shell,其中加载的数据以名为 data 的列表收集。

cryohub view path/to/files/* /other/path/to/file.star
print(data[0])

功能

目前,cryohub 可以读取以下格式的图像:

  • .mrc(以及 .mrcs.st.map.rec 变体)= .tif(f)
  • Dynamo .em
  • EMAN2 .hdf

以及以下格式的粒子数据:

  • Relion .star
  • Dynamo .tbl
  • Cryolo .cbox.box
  • EMAN2 .json[^1]

目前存在的写入函数有

  • .mrc
  • EMAN2 .hdf
  • Dynamo .em
  • Relion .star
  • Dynamo .tbl

[^1]:EMAN2 使用断层片的中心作为粒子坐标的原点。这意味着在打开断层片时,您必须根据其尺寸重新定位粒子。要自动完成此操作,您可以使用 center_on_tomo 参数提供一个包含要使用的断层片的 hdf 文件。

图像数据

当可能(除非禁用)时,cryohub 使用 dask 惰性加载图像。结果对象可以像普通的 numpy 数组一样处理,但需要在应用任何挂起的操作并返回结果之前调用 array.compute()

贡献

欢迎贡献!如果您希望支持读取或写入的文件格式,只需针对它打开一个关于该规范的问题。或者,您也可以提交一个包含您提出的实现的PR;您可以查看现有函数以获得灵感。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪一个,请了解更多关于 安装包 的信息。

源分布

cryohub-0.6.4.tar.gz (23.9 kB 查看哈希

上传时间

构建分布

cryohub-0.6.4-py2.py3-none-any.whl (30.0 kB 查看哈希

上传时间 Python 2 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面