Comments (2)
@itcarroll Thanks for raising. As this might have severe implications I'm inclined to wait for discussion in Unidata/netcdf-c#2571.
Could you give a bit more detail on the use-case?
from h5netcdf.
Yes, I'm interested to see the response from Unidata as well. Of course, I may not foresee some undesirable outcome.
My use case concerns datasets like what you get from XArray with xarray.Dataset({'y': ('x', [0.1, 2.3, 4.5]), 'a': ('x', [0, 0, 1])})
, having no coordinate variable for shared dimension x
. In HDF5 terminology, x
is a dimension scale having a dataspace that may either be null, scalar or an array. HDF5 does not enforce any kind of dimensionality agreement between x
and y
or a
.
A creator of HDF5 files, who does not intend to create netCDF4 files nor depend on the netCDF4 libraries, will use a null dataspace for x
when creating a file with the same y
and a
. They would need the netCDF4 libraries (or knowledge of them) to use an array with shape (3,)
for x
that also has attributes signaling the array should be ignored. The consumer of that file using XArray benefits greatly from the fact that the netcdf4-python and h5netcdf engines do their level best to read this HDF5 file that is not strictly netCDF4.
These engines are already very accommodating in generation of "phony dimensions" in the absence of dimension scales, and I hope those could become less common if the proposed use of null dataspaces catches on.
from h5netcdf.
Related Issues (20)
- Remove h5py2 related code and CI builds HOT 3
- FAILED h5netcdf/tests/test_h5netcdf.py::test_group_names HOT 6
- AttributeError for '_phony_dim_count' when trying to convert a file made with h5py HOT 12
- Tests test_more_than_7_attr_creation_track_order and test_bool_slicing_length_one_dim fail in the test suite HOT 18
- very slow partial reading when saved with index shift HOT 10
- h5py minimum version update? HOT 5
- Improving performance for h5netcdf HOT 13
- Documentation request: Alternative way to obtain h5netcdf HOT 1
- Segmentation fault after upgrading to h5netcdf==1.1.0 HOT 14
- ValueError raised when attribute has type `h5py.Reference` HOT 5
- Modifying attributes safely is not possible with all datasets. HOT 10
- Better Error for illegal variable names HOT 3
- md5 checksum mismatch for identical files/data HOT 7
- Question: does `h5netcdf` bring in the entire data from a netCDF file on a remote disk (like S3)? HOT 5
- Provide an example with time dimension readable by paraview HOT 3
- transient vs committed types HOT 5
- string decoding produces pairs of low surrogates HOT 3
- netcdf4-python can now read h5py-created `bool` and `complex` variables HOT 1
- Minor test failure as underlying H5py library changed an exception from KeyError to TypeError HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from h5netcdf.