Skip to content

Error reading maxwell data (version 20160704) #1658

Description

@michaelhadler

Hi everyone,

I want to use SpikeInterface on my MaxOne data (recorded using the "Network" recording assay in MaxLab, version 20160704). For starters, I want to create a bin and probe file to give it a go in Kilosort 4. However, apparently the data can't be loaded when calling it with the maxwell extractor. My impression is that there is a discrepancy between the actual .h5 file structure and the expectations in init. The file is unchanged from the initial recording, so I'm not quite sure what's amiss. Any ideas?

#Performed on Windows 10, python 3.9.21, neo 0.14.0, numpy 1.26.4.
from spikeinterface.extractors import read_maxwell

recording = read_maxwell(file_path) #file_path refers to a previously selected .h5 file recorded in MaxLab "Network" assay

Here's the error traceback:
Error loading data: could not assign tuple of length 2 to structure with 3 fields.

(kilosort) D:\HD-MEA\250116_Mouse-Ca12\Slice_6\Recording\002_Baseline2>python run_kilosort.py
Error loading data: could not assign tuple of length 2 to structure with 3 fields.
Traceback (most recent call last):
  File "D:\HD-MEA\250116_Mouse-Ca12\Slice_6\Recording\002_Baseline2\run_kilosort.py", line 24, in <module>
    recording = read_maxwell(file_path)
  File "C:\Users\analyzer\anaconda3\envs\kilosort\lib\site-packages\spikeinterface\extractors\neoextractors\maxwell.py", line 62, in __init__
    NeoBaseRecordingExtractor.__init__(
  File "C:\Users\analyzer\anaconda3\envs\kilosort\lib\site-packages\spikeinterface\extractors\neoextractors\neobaseextractor.py", line 188, in __init__
    _NeoBaseExtractor.__init__(self, block_index, **neo_kwargs)
  File "C:\Users\analyzer\anaconda3\envs\kilosort\lib\site-packages\spikeinterface\extractors\neoextractors\neobaseextractor.py", line 27, in __init__
    self.neo_reader = self.get_neo_io_reader(self.NeoRawIOClass, **neo_kwargs)
  File "C:\Users\analyzer\anaconda3\envs\kilosort\lib\site-packages\spikeinterface\extractors\neoextractors\neobaseextractor.py", line 66, in get_neo_io_reader
    neo_reader.parse_header()
  File "C:\Users\analyzer\anaconda3\envs\kilosort\lib\site-packages\neo\rawio\baserawio.py", line 211, in parse_header
    self._parse_header()
  File "C:\Users\analyzer\anaconda3\envs\kilosort\lib\site-packages\neo\rawio\maxwellrawio.py", line 113, in _parse_header
    signal_streams = np.array(signal_streams, dtype=_signal_stream_dtype)
ValueError: could not assign tuple of length 2 to structure with 3 fields.

As the exemplary files are all > 1GB, I'm happy to share one privately if anyone can help me out :)

Thanks, and best,

Michael

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions