Hdf5Sample: Store string vectors as "S" dtype instead of obj

This commit is contained in:
2021-08-04 11:34:56 -05:00
parent c513515725
commit 865a4b2f40

View File

@@ -247,8 +247,16 @@ class Hdf5Sample(Sample):
if value is None:
return
self._assert_is_vector(value)
modified = [v if v is not None else "" for v in value]
self._put(key, modified, compress=True)
for v in value:
if isinstance(v, str):
value = np.array(
[u if u is not None else b"" for u in value],
dtype="S",
)
break
self._put(key, value, compress=True)
@overrides
def put_vector_list(self, key: str, value: VectorList) -> None: