El objecto VLArray de PyTables es basicamente una tupla de objetos de
longitud variable persistente en disco. Aqui puedes ver un ejemplo muy
basico:
"""
import tables
# Crea el fichero con un VLArray y objetos
with tables.openFile("myfile.h5", "w") as f:
vla = f.createVLArray(f.root, "vla", tables.ObjectAtom())
for i in xrange(1000):
vla.append((i, "H%d" % i))
# Reabre el fichero y lee algunas filas
with tables.openFile("myfile.h5", "r") as f:
print f.root.vla[100:200:20]
"""
El output the esto es:
[(100, 'H100'), (120, 'H120'), (140, 'H140'), (160, 'H160'), (180, 'H180')]
Como ves, el formato admite accessos aleatorios a los elementos de la tupla.
PyTables lo puedes encontrar en las principales distribuciones de Python
(Anaconda, Canopy), asi como en la mayoria de distribuciones Linux.
Saludos,
Francesc
--
Francesc Alted