Escribir en un conjunto de datos compuesto con una cadena de longitud variable a través de h5py (HDF5)

He podido crear un conjunto de datos compuesto que consiste en un int sin signo y una cadena de longitud variable en mi archivo HDF5 usando h5py, pero no puedo escribir en él.

dt = h5py.special_dtype(vlen=str)
dset = fout.create_dataset(ver, (1,), dtype=np.dtype([("time", np.uint64),("value", dt)]))

He escrito en otros conjuntos de datos compuestos con bastante facilidad, estableciendo las columnas específicas del conjunto de datos compuestos como iguales a una matriz numpy existente.

Ahora donde me encuentro con problemas es con escribir en el conjunto de datos compuesto con una cadena de longitud variable. Numpy no admite una cadena de longitud variable, por lo que no puedo crear la matriz numpy de antemano que contendría el valor.

Mi siguiente pensamiento fue escribir el valor individual en la columna en cuestión, y esto funciona para el int sin signo. Sin embargo, cuando intento escribir una cadena en el campo de cadena de longitud variable en el conjunto de datos compuesto, obtengo:

    dset["value"] = str("blah")
  File "D:\Anaconda3\lib\site-packages\h5py\_hl\dataset.py", line 508, in __setitem__
    val = val.astype(numpy.dtype([(names[0], dtype)]))
ValueError: Setting void-array with object members using buffer.

Cualquier orientación sería muy apreciada.

Respuestas a la pregunta(1)

Su respuesta a la pregunta