从gromacs文件中读取数据并将其写入hdf5文件格式
本文介绍了从gromacs文件中读取数据并将其写入hdf5文件格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试逐行读取.gro文件中的数据,并希望将其写入.h5文件格式的数据。但获取TypeError:"No conversion path ford type: type('<U7')"
。我猜读取的数据是字符串格式的。我尝试使用np.arrares将其转换为数组,但不起作用。有谁能帮我解决这个问题吗?或者,有没有更好的方法来读取数据?我无法使用np.loadtxt
,因为数据大小约为50 GB。
.gro文件的格式如下
错误:
以下是我的小代码:
HDF5
首先创建包含大量行的推荐答案数据集[shape=(1_000_000)
],然后使用maxshape
参数使其可扩展。值maxshape=(None,)
将允许无限行。我定义了一个简单的数据类型来匹配您的数据。如果需要,可以自动为不同的文件格式创建匹配的数据类型。
np.genfromtxt
将直接读入到NumPy数组中。使用skip_header
和max_rows
参数递增读取。将dtype
参数包括在用于创建上述数据集的数据类型中。
为了测试增量读取,我将您的文件扩展到54行(用于3个读取循环)。出于性能原因,您可能希望使用更大的值来读取50 GB(将incr
设置为您可以读取到内存中的值--从100_000行开始)。
以下代码:(修改为跳过前两行
这篇关于从gromacs文件中读取数据并将其写入hdf5文件格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!