issue_comments: 1560559426
This data as json
html_url | issue_url | id | node_id | user | created_at | updated_at | author_association | body | reactions | performed_via_github_app | issue |
---|---|---|---|---|---|---|---|---|---|---|---|
https://github.com/pydata/xarray/pull/7862#issuecomment-1560559426 | https://api.github.com/repos/pydata/xarray/issues/7862 | 1560559426 | IC_kwDOAMm_X85dBD9C | 5821660 | 2023-05-24T07:01:44Z | 2023-05-24T07:01:44Z | MEMBER | Thanks @tomwhite for the PR. I've only quickly checked the approach, which looks reasonable. But those changes have implications on several locations of the backend code, which we would have to sort out. Considering this example: ```python import numpy as np import xarray as xr print(f"creating dataset with empty string array") print("-----------------------------------------") dtype = xr.coding.strings.create_vlen_dtype(str) ds = xr.Dataset({"a": np.array([], dtype=dtype)}) print(f"dtype: {ds['a'].dtype}") print(f"metadata: {ds['a'].dtype.metadata}") ds.to_netcdf("a.nc", engine="netcdf4") print("\nncdump") print("-------") !ncdump a.nc engines = ["netcdf4", "h5netcdf"] for engine in engines: with xr.open_dataset("a.nc", engine=engine) as ds: print(f"\nloading with {engine}") print("-------------------") print(f"dtype: {ds['a'].dtype}") print(f"metadata: {ds['a'].dtype.metadata}") ``` ```python creating dataset with empty string array dtype: object metadata: {'element_type': <class 'str'>} ncdumpnetcdf a { dimensions: a = UNLIMITED ; // (0 currently) variables: string a(a) ; data: } loading with netcdf4dtype: object metadata: None loading with h5netcdfdtype: object metadata: {'vlen': <class 'str'>} ``` Engine The source is actually located in Unfortunately I do not have an immediate solution here. |
{ "total_count": 0, "+1": 0, "-1": 0, "laugh": 0, "hooray": 0, "confused": 0, "heart": 0, "rocket": 0, "eyes": 0 } |
1720045908 |