Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dandiset 000021 error with nwbRead #466

Closed
2 tasks done
BrockMCarlson opened this issue Oct 4, 2022 · 6 comments
Closed
2 tasks done

Dandiset 000021 error with nwbRead #466

BrockMCarlson opened this issue Oct 4, 2022 · 6 comments
Assignees

Comments

@BrockMCarlson
Copy link

What happened?

Dandiset 000021 NWB files do not load into the matlab workspace using nwbRead. Other nwb files from other dandisets do seem to load. I suspect there may be something specific to the nwb file format in the 000021 dandiset that prevents nwbRead completion.

Steps to Reproduce

%% Load NWB _00021 - does not work
clear
cd matnwb
addpath(genpath(pwd));
generateCore(); % generate the most recent nwb-schema release.

% File string generation to 000021 dandiset file location on the local machine.
% For the purposes of this test, we have used individual files from the sub-699733573 and sub-703279277 folders under dandiset 000021

fileStorageFile = 'C:\NeuroDataReHack';
cd(fileStorageFile)
nwbFileName_21 = 'sub-699733573_ses-715093703.nwb';
nwbFile_21 = strcat(fileStorageFile,filesep,nwbFileName_21);

% load
nwb_21 = nwbRead(nwbFile_21);

Error Message

Error using logical
Conversion to logical from cell is not possible.

Error in types.util.correctType (line 58)
        val = logical(val);

Error in types.util.checkDtype (line 96)
correctedValue = types.util.correctType(val, type);

Error in types.ndx_aibs_ecephys.EcephysElectrodeGroup/validate_has_lfp_data (line 64)
        val = types.util.checkDtype('has_lfp_data', 'logical', val);

Error in types.ndx_aibs_ecephys.EcephysElectrodeGroup/set.has_lfp_data (line 35)
        obj.has_lfp_data = obj.validate_has_lfp_data(val);

Error in types.ndx_aibs_ecephys.EcephysElectrodeGroup (line 26)
        obj.has_lfp_data = p.Results.has_lfp_data;

Error in io.parseGroup (line 85)
    parsed = eval([Type.typename '(kwargs{:})']);

Error in io.parseGroup (line 38)
    subg = io.parseGroup(filename, group, Blacklist);

Error in io.parseGroup (line 38)
    subg = io.parseGroup(filename, group, Blacklist);

Error in io.parseGroup (line 38)
    subg = io.parseGroup(filename, group, Blacklist);

Error in nwbRead (line 59)
nwb = io.parseGroup(filename, h5info(filename), Blacklist);

Error in loadNWBfiles (line 40)
nwb_21 = nwbRead(nwbFile_21);

Operating System

Windows

Matlab Version

'9.12.0.1975300 (R2022a) Update 3'

Code of Conduct

@lawrence-mbf lawrence-mbf self-assigned this Oct 4, 2022
@lawrence-mbf
Copy link
Collaborator

Hi @BrockMCarlson,

Are you using a release version of MatNWB or the tip of the master branch?

@BrockMCarlson
Copy link
Author

Hi @lawrence-mbf . Thanks! I have tried cloning the repo from the github master branch. I have also deleted that download and re-tried the process with the Mathworks FileExchange release. I believe both of these are the tip of the master branch, correct?

@lawrence-mbf
Copy link
Collaborator

@BrockMCarlson I believe so. I will look into this.

@lawrence-mbf
Copy link
Collaborator

This is due to how booleans are encoded in h5py as HDF5 does not provide boolean data on its own. Related to #458

@lawrence-mbf lawrence-mbf mentioned this issue Oct 5, 2022
3 tasks
@lawrence-mbf
Copy link
Collaborator

Hi @BrockMCarlson Since bool support has been merged, the only issue is just due to this long outstanding issue with waveform_mean #43

@lawrence-mbf
Copy link
Collaborator

The waveform_mean issue is tracked in #238

@lawrence-mbf lawrence-mbf closed this as not planned Won't fix, can't repro, duplicate, stale May 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants