问题标签 [pytables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
98 浏览

python - python中的数组问题

我有这个代码:

它只需要一个永恒的执行。有没有办法加快速度?

注意:它必须是 x[:,i] 而不是 x[i,:]

0 投票
1 回答
1729 浏览

python - 使用 PyTables 存储图像和元数据

我正在使用 PyTables 将一些图像存储为Array数据CArray类型。对于这些图像中的每一个,我还想存储一些基本的元数据(例如,EXIF数据)。

我可以想象存储这两种数据格式的多种方法,从将元数据与AttributeSet每个Array/的类一起存储CArray到对所有元数据使用 a Table

我的问题是:如果我希望能够有效地从最终的 hdf5 文件中查询和提取图像进行处理,那么最好的方法是什么?例如,我希望能够提取在特定时间(下午 12 点到 3 点)拍摄的图像并处理该数据子集,然后将副本插入数据库或替换现有数组。

非常感谢您的帮助。

最好的,

缺口

[编辑(澄清):我目前正在将这些图像处理为 NumPy 数组,我希望保留该功能]

0 投票
1 回答
21614 浏览

python - Python:如何在 PyTables 中存储一个 numpy 多维数组?

如何使用 PyTables 将 numpy 多维数组放入 HDF5 文件中?

据我所知,我不能将数组字段放入 pytables 表中。

我还需要存储一些关于这个数组的信息,并能够对其进行数学计算。

有什么建议么?

0 投票
0 回答
244 浏览

python - 在 pytables 数组中搜索

我有一个存储在 pytables 中的多维数组。
如何对其执行搜索?
例如:我喜欢做一个搜索返回数组的一个维度,该维度的所有值之和都大于10

谢谢

0 投票
1 回答
2129 浏览

python - 使用 pytables,哪个更有效:scipy.sparse 还是 numpy 密集矩阵?

使用时pytables,不支持(据我所知)scipy.sparse矩阵格式,因此要存储矩阵,我必须进行一些转换,例如

问题是该get_sparse功能需要一些时间(从磁盘读取),如果我理解正确,还需要数据适合内存。

唯一的其他选择似乎是将矩阵转换为密集格式(numpy array)然后pytables正常使用。然而,这似乎是相当低效的,虽然我想也许pytables会处理压缩本身?

0 投票
2 回答
1627 浏览

java - 结合 Java、Python、PyTables 和 HDF5 的简单有效的解决方案

我是 Python、PyTables 和 HDF5 的新手。我正在为我的问题寻找简单和最佳的解决方案。

接下来是问题。一方面,我有许多带有数据的 XML 文件。我只想解析这些文件并将数据放在另一端的 hdf5 文件中。稍后,我将通过一些搜索条件使用这些数据。为什么是 HDF5?因为需要放置大型数据集并且因为速度。使用 RDBMS 会在 JOIN 操作期间产生性能问题。解决方案必须提供速度和良好的内存性能。

经过一番谷歌搜索后,我发现 Python 和 PyTables 是可能的解决方案。我的想法是在 Java 中解析 XML 中的数据(此代码必须用 Java 编写),然后编写 python 脚本,使用 PyTables API 在 hdf5 中插入数据并从 Java 执行 python 脚本。所以,我正在从 Java 程序编写和执行 python 脚本。为了在 Java 中编写 python 脚本,我使用 java.io.* 包并在 Java 中执行 Process 类。例如:

p.exec("cmd /c C:\MyScripts\myscript.py")

我不知道这个解决方案好不好。对我来说,使用 java.io.* 从 Java 编写脚本并不酷。可能,我稍后在从脚本读取结果时会遇到问题(当我使用 Python 脚本和 PyTables API 制定一些搜索条件时)。

所以,我对我的问题没有几个问题。在一侧解析 XML 数据并将数据存储在另一侧的 hdf5 之间的最佳解决方案是什么?我对这个解决方案的正确方式(从 Java 代码编写和执行 python 脚本)?Python 和 PyTables 呢?这些技术能很好地解决我的问题吗?我还阅读了一些关于 Jython 的内容,但我不知道是否可以将它与 PyTables 结合使用?

欢迎专业人士提出意见和建议。感谢您的帮助。

0 投票
2 回答
1946 浏览

python - 是否可以在 PyTables 单元格中存储任意形状的多维数组?

PyTables 支持从继承自 IsDescription 类的用户定义类创建表。这包括对多维单元格的支持,如文档中的以下示例所示:

但是,是否可以在单个单元格中存储任意形状的多维数组?在上面的示例之后,类似于pressure = Float32Col(shape=(x, y))wherexy的内容取决于每一行的插入。

如果不是,首选的方法是什么?将每个(任意形状的)多维数组存储在CArray具有唯一名称的 a 中,然后将这些名称存储在主索引表中?我想象的应用程序是存储图像和相关元数据,我希望能够查询和使用它们numexpr

非常感谢任何指向 PyTables 最佳实践的指针!

0 投票
1 回答
3613 浏览

python - python字典应该如何存储在pytables中?

pytables 本身并不支持 python 字典。我接近它的方法是制作以下形式的数据结构:

(请注意,我确保键的长度小于 40 个字符),然后使用以下结构创建一个表:

然后填充它:

并通过以下方式检索数据:

这行得通,但是重新读字典非常慢。我认为问题在于该read()函数导致整个字典被加载到内存中,这实际上不是必需的。有一个更好的方法吗?

0 投票
1 回答
1209 浏览

python - 无法安装 PyTables

我正在尝试使用其中一个easy_install或两个尝试安装 PyTables,pip但两次尝试都以相同的错误结束:

error: Command "gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -DNDEBUG=1 -DHAVE_LZO2_LIB=1 -DHAVE_BZ2_LIB=1 -Iblosc -I/usr/lib/pymodules/python2.7/numpy/core/include -I/usr/include/python2.7 -c src/H5ARRAY.c -o build/temp.linux-x86_64-2.7/src/H5ARRAY.o -Isrc -DH5_USE_16_API" failed with exit status 1

我已经安装了所有依赖项。

  • 发现安装了 numexpr 1.4.2 包。
  • 发现安装了 Cython 0.14.1 包。
  • 找到 HDF5 标头/usr/include,库位于/usr/lib.
  • 找到 LZO 2 标头/usr/include,库位于/usr/lib
  • 由于已发现 LZO 2,因此跳过了对 LZO 1 的检测。
  • 在 中找到 bzip2 标头,在/usr/local/include中找到库/usr/local/lib

但仍然有一个警告:

.. WARNING:: Could not find the bzip2 runtime. The bzip2 shared library was *not* found in the default library paths. In case of runtime problems, please remember to install it.

此警告是否有可能阻止成功安装 PyTables?

0 投票
1 回答
586 浏览

numpy - NumPy 可以处理多少数据

我正在尝试使用PyTablesand NumPy

你能告诉我后者可以处理多少数据吗?

我目前正在处理 1.4 亿行的数据,想知道是否NumPy可以处理它。如果它至少可以处理 2 列的 1.4 亿行,那就太好了。现在我使用具有 8 GB RAM 的 64 位版本的 Windows。

如果NumPy无法处理这么多数据,统计和机器学习算法实现的可能替代方案是什么?