hdf5相关内容

从 netCDF 更快地读取时间序列?

我有一些大型 netCDF 文件,其中包含 0.5 度分辨率的地球 6 小时数据. 每年有 360 个纬度点、720 个经度点和 1420 个时间点.我有两个年度文件 (12 GB ea) 和一个包含 110 年数据 (1.3 TB) 的文件存储为 netCDF-4(这是 1901 年数据的示例,1901.nc,它的 使用政策,以及原件,我开始使用的公共文件). 据我所知,从一个 ne ..
发布时间:2022-01-04 08:34:21 其他开发

h5py 无法打开用 h5py 创建的 HDF5 文件

我在 Ubuntu 12.04(32 位版本)下创建了一个 HDF5 文件,显然没有任何问题,使用 Anaconda 作为 Python 发行版并在 ipython 笔记本中编写.底层数据都是numpy数组.例如, 将 numpy 导入为 np导入 h5pyf = h5py.File('myfile.hdf5','w')group = f.create_group('a_group')group ..
发布时间:2022-01-04 08:24:22 Python

以 SQLite 和 HDF5 格式从/导入到 numpy、scipy

Python 与 SQLite(sqlite3、atpy)和 HDF5(h5py、pyTables)的接口似乎有很多选择——我想知道是否有人有将它们与 numpy 数组或数据表(结构化/记录数组)一起使用的经验,以及其中哪些与每种数据格式(SQLite 和 HDF5)的“科学"模块(numpy、scipy)无缝集成. 解决方案 大部分取决于您的用例. 与传统的关系数据库相比,我在处理 ..
发布时间:2021-12-31 12:04:49 数据库

在 HDF5 (PyTables) 中存储 numpy 稀疏矩阵

我在用 PyTables 存储 numpy csr_matrix 时遇到问题.我收到此错误: TypeError: ``csr_matrix`` 类型的对象在此上下文中不受支持,抱歉;支持的对象有:NumPy 数组、记录或标量;同类列表或元组、整数、浮点数、复数或字符串 我的代码: f = tables.openFile(path,'w')atom = tables.Atom.from_dt ..
发布时间:2021-12-31 11:52:46 Python

如何使用 h5py 将数据附加到 hdf5 文件中的一个特定数据集

我正在寻找使用 Python (h5py) 将数据附加到 .h5 文件中的现有数据集的可能性. 我的项目的简短介绍:我尝试使用医学图像数据训练 CNN.由于在将数据转换为 NumPy 数组的过程中数据量巨大且内存使用量大,我需要将“转换"拆分为几个数据块:加载和预处理前 100 张医学图像并将 NumPy 数组保存到 hdf5文件,然后加载接下来的 100 个数据集并附加现有的 .h5 文件 ..
发布时间:2021-12-27 16:53:17 Python

大数据上的增量 PCA

我刚刚尝试使用 sklearn.decomposition 中的 IncrementalPCA,但它引发了 MemoryError,就像之前的 PCA 和 RandomizedPCA 一样.我的问题是,我尝试加载的矩阵太大而无法放入 RAM.现在它作为形状 ~(1000000, 1000) 的数据集存储在 hdf5 数据库中,所以我有 1.000.000.000 float32 值.我认为 Inc ..
发布时间:2021-12-25 14:31:33 Python

在 Google Cloud Bucket 中保存 Keras ModelCheckpoint

我正在使用 Keras 和 TensorFlow 后端在 Google Cloud 机器学习引擎上训练 LSTM 网络.在对 gcloud 和我的 python 脚本进行一些调整后,我设法部署了我的模型并执行了成功的训练任务. 然后我尝试使用 Keras modelCheckpoint 回调让我的模型在每个时期之后保存检查点.使用 Google Cloud 运行本地训练作业按预期完美运行.每 ..
发布时间:2021-12-20 19:02:40 其他开发

搜索 HDF5 数据集

我目前正在探索 HDF5.我已经阅读了“Evaluating HDF5"主题中的有趣评论,我知道 HDF5 是存储数据的首选解决方案,但是你如何查询呢?例如,假设我有一个包含一些标识符的大文件:有没有办法快速知道文件中是否存在给定的标识符? 解决方案 我认为答案是“不直接". 以下是我认为您可以实现该功能的一些方法. 使用群组: 可以以基数树的形式使用组的层次结构来存储数 ..
发布时间:2021-12-20 14:14:41 其他开发

将多个 csv 文件读取到 HDF5 时出现 Pandas ParserError EOF 字符

使用 Python3,Pandas 0.12 我正在尝试将多个 csv 文件(总大小为 7.9 GB)写入 HDF5 存储以供以后处理.csv 文件每个包含大约一百万行,15 列,数据类型主要是字符串,但也有一些浮点数.但是,当我尝试读取 csv 文件时,出现以下错误: 回溯(最近一次调用最后一次): 中的文件“filter-1.py",第 38 行to_hdf()文件“filter-1. ..
发布时间:2021-12-09 15:02:20 Python

HDF5 - 并发、压缩和输入输出性能

我有以下关于 HDF5 性能和并发性的问题: HDF5 是否支持并发写入访问? 抛开并发考虑不谈,HDF5 在I/O 性能方面的性能如何(压缩率会影响性能吗)? 由于我将 HDF5 与 Python 结合使用,它的性能与 Sqlite 相比如何? 参考文献: http://www.sqlite.org/faq.html#q5 可以在 NFS 文件系统上锁定 sqlite 文 ..
发布时间:2021-12-08 18:19:11 数据库

MATLAB:.mat 版本之间的差异

官方文档声明如下: .但我注意到,除了上表所述之外,还有其他重要差异. 例如,在 MATLAB 中保存一个包含大约 6,000 个元素且占用 176 MB 内存的元胞数组会根据我使用的是 -v7 还是-v7.3: 使用 -v7:文件大小 = 15 MB,并保存 &加载快. 使用 -v7.3:文件大小 = 400 MB,并保存 &加载非常慢(部分原因可能是文件太大). 有没 ..
发布时间:2021-12-08 15:01:46 其他开发

用于读取行的最佳 HDF5 数据集块形状

我有一个合理大小(18GB 压缩)的 HDF5 数据集,并且希望优化读取行的速度.形状是 (639038, 10000).我将多次读取位于整个数据集的一系列行(比如约 1000 行).所以我不能使用 x:(x+1000) 来切片行. 使用 h5py 从内存不足的 HDF5 中读取行已经很慢了,因为我必须传递一个排序列表并使用花哨的索引.有没有办法避免花哨的索引,或者我可以使用更好的块​​形状 ..
发布时间:2021-12-08 11:37:18 Python

保存到 hdf5 非常慢(Python 冻结)

我正在尝试将瓶颈值保存到新创建的 hdf5 文件中.瓶颈值以 (120,10,10, 2048) 的形式批量出现.单独保存一批会占用超过 16 场演出,而 Python 似乎在这一批上冻结了.根据最近的发现(见更新,似乎 hdf5 占用大内存是可以的,但冻结部分似乎是一个小故障. 我只是想保存前 2 个批次用于测试目的,并且只保存训练数据集(再次,这是一个测试运行),但我什至无法通过第一批. ..
发布时间:2021-12-08 09:36:29 Python

matplotlib - 来自高度矩形阵列的 3d 表面

我正在尝试在 matplotlib 中绘制一些 HDF 数据.使用h5py导入后,数据以数组的形式存储,如下: array([[151, 176, 178],[121, 137, 130],[120, 125, 126]) 在这种情况下,x 和 y 值只是数组字段的索引,而 z 值是特定字段的值.在 (x,y,z) 形式中,它看起来像: (1,1,151)(2,1,176)(3,1,178) ..
发布时间:2021-11-25 01:04:54 Python

使用不同大小的 h5py 数组进行保存

我正在尝试使用 HDF5 数据格式存储大约 3000 个 numpy 数组.数组长度从 5306 到 121999 np.float64 我得到Object dtype dtype('O') 没有原生的 HDF5 等价物错误,因为数据的不规则性质 numpy 使用通用对象类. 我的想法是将所有数组填充到 121999 的长度并将大小存储在另一个数据集中. 但是这在空间上看起来效率 ..
发布时间:2021-11-18 05:04:51 Python

写作&将浮点数组附加到 C++ 中 hdf5 文件中的唯一数据集

我正在处理多个文件,文件的每次处理将输出数千个浮点数组,我将将所有文件的数据存储在单个 hdf5 中的一个巨大数据集中以供进一步处理. 问题是目前我对如何将我的数据附加到 hdf5 文件中感到困惑.(上面代码中的注释)在上面的 2 个 for 循环中,如您所见,我想一次将一维浮点数组附加到 hdf5 中,而不是整个过程.我的数据是TB级的,我们只能把数据追加到文件中. 有几个问题: ..
发布时间:2021-11-18 03:59:15 C/C++开发

是否可以使用python将磁盘上的不连续数据映射到数组?

我想将硬盘上的一个大的 Fortran 记录(12G)映射到一个 numpy 数组.(映射而不是加载以节省内存.) 存储在 fortran 记录中的数据不是连续的,因为它被记录标记分隔.记录结构为“标记、数据、标记、数据、...、数据、标记".数据区域和标记的长度是已知的. 标记之间的数据长度不是4字节的倍数,否则我可以将每个数据区域映射到一个数组. 在memmap中设置offs ..
发布时间:2021-11-18 03:39:55 Python

写作&将浮点数组附加到 C++ 中 hdf5 文件中的唯一数据集

我正在处理多个文件,文件的每次处理将输出数千个浮点数组,我将将所有文件的数据存储在单个 hdf5 中的一个巨大数据集中以供进一步处理. 问题是目前我对如何将我的数据附加到 hdf5 文件中感到困惑.(上面代码中的注释)在上面的 2 个 for 循环中,如您所见,我想一次将一维浮点数组附加到 hdf5 中,而不是整个过程.我的数据是TB级的,我们只能把数据追加到文件中. 有几个问题: ..
发布时间:2021-11-16 19:21:37 C/C++开发