跳转到主要内容

Python中的STAR文件I/O

项目描述

starfile

License PyPI Python Version CI codecov

starfile 是一个用于在Python中读取和写入 STAR文件 的包。

starfile 可以交互式地检查/探索文件,或者在脚本和更大的软件包中使用以提供基本的STAR文件I/O功能。数据以简单的Python字典或 pandas数据框 暴露。

该包主要设计用于与由 RELION 生成的文件兼容。

有关使用数据框的更多信息,请参阅 pandas文档

有关 starfile 的特定文档,请参阅 teamtomo.org/starfile


快速入门

对于以下文件 particles.star,它包含一个数据块

data_particles

loop_
_rlnCoordinateX #1
_rlnCoordinateY #2
_rlnCoordinateZ #3
_rlnAngleRot #4
_rlnAngleTilt #5
_rlnAnglePsi #6
_rlnMicrographName #7
91.798700	83.622600	203.341030	-51.740000	173.930000	32.971000	01_10.00Apx.mrc
97.635800	80.437000	203.136160	141.500000	171.760000	-134.680000	01_10.00Apx.mrc
92.415200	88.842700	210.663900	-78.750000	173.930000	87.263200	01_10.00Apx.mrc
94.607830	93.135410	205.425960	-85.215000	167.170000	85.632200	01_10.00Apx.mrc
86.187800	80.125400	204.558750	14.910000	163.260000	-16.030000	01_10.00Apx.mrc
91.824240	76.738300	203.794280	39.740000	168.410000	-57.250000	01_10.00Apx.mrc
98.253300	73.530100	203.856030	73.950000	166.380000	-84.640000	01_10.00Apx.mrc
101.303500	80.290800	194.790400	-178.878000	166.090000	73.181000	01_10.00Apx.mrc

读取文件

import starfile

df = starfile.read('particles.star')

与数据交互

df['rlnCoordinateX'] += 10
df.head()
   rlnCoordinateX  rlnCoordinateY  rlnCoordinateZ  rlnAngleRot  rlnAngleTilt  rlnAnglePsi rlnMicrographName
0       101.79870        83.62260       203.34103      -51.740        173.93      32.9710   01_10.00Apx.mrc
1       107.63580        80.43700       203.13616      141.500        171.76    -134.6800   01_10.00Apx.mrc
2       102.41520        88.84270       210.66390      -78.750        173.93      87.2632   01_10.00Apx.mrc
3       104.60783        93.13541       205.42596      -85.215        167.17      85.6322   01_10.00Apx.mrc
4        96.18780        80.12540       204.55875       14.910        163.26     -16.0300   01_10.00Apx.mrc

将(修改后的)数据保存到文件

starfile.write(df, 'modified_particles.star')

有关更高级的使用,请查看示例。


安装

pip install starfile

项目详情


下载文件

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

源代码分布

starfile-0.5.8.tar.gz (28.0 kB 查看哈希值)

上传时间 源代码

构建分布

starfile-0.5.8-py3-none-any.whl (10.5 kB 查看哈希值)

上传时间 Python 3

支持者