Skip to content

NDI-matlab functionality: reading from ndi.element.timeseries objects, writing ndi.neuron objects - #157

Open
stevevanhooser wants to merge 25 commits into
JaneliaSciComp:masterfrom
VH-Lab:ndi_import
Open

NDI-matlab functionality: reading from ndi.element.timeseries objects, writing ndi.neuron objects#157
stevevanhooser wants to merge 25 commits into
JaneliaSciComp:masterfrom
VH-Lab:ndi_import

Conversation

@stevevanhooser

Copy link
Copy Markdown

These modifications allow:

  1. JRCLUST to read ndi.element.timeseries objects (including ndi.probe.timeseries objects) directly from NDI-matlab
  2. There is a bootstrap method to create the parameter file.
  3. There is an jrclust.detect.ndiRecording object to read the data in.
  4. There is an jrclust.export.ndi method to save the clustered neurons back to NDI-matlab.
  5. The bootstrap functionality is documented in the .rst documentation file.

Requires http://github.com/VH-Lab/NDI-matlab for these functions (error is given if not installed)

Still needed:

There appears to be no documentation for the export methods (or, I didn't find it). I would like to add documentation to the export ndi function in the documentation.

@aliddell

Copy link
Copy Markdown
Collaborator

You're right about the export documentation, there's not much (or none) to speak of. I can work on standing that up. Can I ask that you add a few unit tests? I'm happy to talk offline about the test framework I've set up.

@stevevanhooser

Copy link
Copy Markdown
Author

Hi Alan -

Yes, I'd be delighted to add unit tests. Can you point me to an example, maybe an Intan example, or any other example that you think would be useful?

-Steve

@aliddell

Copy link
Copy Markdown
Collaborator

Unit tests are another thing I'm still building out -- in particular there aren't any reading or import/export tests (you probably saw this already). I think at a bare minimum, if you can write something out with NDI and read it back in with JRCLUST, and everything is where you expect it to be, that would be useful. We can talk about edge cases when we meet.

Alan Liddell and others added 15 commits February 26, 2021 12:47
bootstrapNDI built the per-element analysis folder under '.JRCLUST' from
ndi.element/elementstring, which separates an element's name from its
reference with ' | '. That produced directories like '.JRCLUST/ctx_|_1',
and '|' is not a legal filename character on Windows, so the bootstrap
could not run there at all.

Build the folder name with ndi.fun.file.elementDirectory instead. It
returns the platform-independent name ('ctx_-_1') and falls back to an
existing legacy '|' folder when one is present, so an analysis directory
created by an earlier version is reused rather than orphaned. Error
clearly if the installed NDI predates that helper.

ndiTest hard-coded the old separator in a '*_|_*' directory glob; it now
resolves the folder the same way the bootstrap does and asserts that the
name contains no '|'.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CzVqXZ4qsFEHZPPszVVqVH
…ey-skmqsn

Use NDI helper for platform-independent element directory naming
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

Successfully merging this pull request may close these issues.

2 participants