Comments (2)
Hi,
This is a difference in the API and I don't know the rationale behind it, but the experiment description is part of the general
root group of the NWB file. In MATLAB, the hierarchical organisation of groups in the NWB file is presented as a flattened list of properties in the NwbFile
object, with the group- and subgroup-names joined with an underscore, so general_experiment_description
just indicates the the experiment_description
is part of the general
group. This should have no practical difference when the NWB file is created/written to. Perhaps @lawrence-mbf could elaborate on why the matnwb package has a different implementation.
from pynwb.
The flattening of the MatNWB structure was so that users did not also need to handle generic HDF5 "group" object types which would make configuration even more complicated. Instead, the necessary groups are identified and generated on export. The reason for the property prefixes is partially for the user but also for other file generation tasks that require searching through the schema's group hierarchy without actually having knowledge of the full schema. You can see a simplified version of this in the io.resolvePath
function which is also used by NwbFile's resolve
method.
from pynwb.
Related Issues (20)
- [Feature]: Make `get_data_in_units` not load entire array into memory HOT 1
- What should be default name of `pynwb.misc.Units`? HOT 2
- [Bug]: IndexSeries: Linked Images has no parent. HOT 3
- Question: why is `grid_spacing` not a field in `ImagingPlane`? HOT 2
- [Bug]: Pre-release workflows failing due to numpy release 2.0.0
- [Feature]: Streaming DANDI:000541 takes a long time
- [Bug]: Check sphinx links workflow failing because of new sphinx warning
- [Bug]: Numpy 2.0
- [Feature]: ros3 streaming on osxarm64
- [Bug]: `epoch_tags` not written to disk HOT 2
- [Feature]: Validation should check for uniqueness of object IDs in file HOT 1
- [Bug]: Cannot add electrodes to existing nwbfile in Zarr format HOT 2
- [Documentation]: Refactor Configuration Tutorial HOT 2
- [Bug]: NWB file created with pynwb cannot be read by OpenEphys HOT 4
- [Bug]: Displaying nwb crashes kernel HOT 1
- [Documentation]: intro tutorial bugs HOT 1
- [Feature]: Set default identifier to UUID HOT 2
- [Documentation]: Make all tutorials show dynamic outputs HOT 1
- [Bug] `NWBHDF5IO.can_read()` fails for missing version HOT 3
- [Feature]: Allow passing DynamicTable for ElectricalSeries.electrodes and RoiResponseSeries.rois HOT 6
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 pynwb.