PyTables 支持从继承自 IsDescription 类的用户定义类创建表。这包括对多维单元格的支持,如文档中的以下示例所示:
class Particle(IsDescription):
name = StringCol(itemsize=16) # 16-character string
lati = Int32Col() # integer
longi = Int32Col() # integer
pressure = Float32Col(shape=(2,3)) # array of floats (single-precision)
temperature = Float64Col(shape=(2,3)) # array of doubles (double-precision)
但是,是否可以在单个单元格中存储任意形状的多维数组?在上面的示例之后,类似于pressure = Float32Col(shape=(x, y))
wherex
和y
的内容取决于每一行的插入。
如果不是,首选的方法是什么?将每个(任意形状的)多维数组存储在CArray
具有唯一名称的 a 中,然后将这些名称存储在主索引表中?我想象的应用程序是存储图像和相关元数据,我希望能够查询和使用它们numexpr
。
非常感谢任何指向 PyTables 最佳实践的指针!