Skip to content
This repository has been archived by the owner on Mar 20, 2024. It is now read-only.

Import continuous data recorded by neuropixels #89

Open
obsee opened this issue Dec 8, 2020 · 11 comments
Open

Import continuous data recorded by neuropixels #89

obsee opened this issue Dec 8, 2020 · 11 comments

Comments

@obsee
Copy link

obsee commented Dec 8, 2020

Hi.
I'm using open-ephys GUI and neuropixels.
I recorded 50 min of LFP and SPK.

  1. 'Continuous.dat' file of the LFP is around 3G. I have 48G RAM on my computer.
    According to the advice of using memmapfile, I tried to use it. But still, I have trouble with importing LFP data to Matlab.
    The error message indicates 'out of memory.'
    I can't figure out how to map memory in Matlab.
    Could you help me out?
  2. Without slitting recording time, Is it possible to select a certain set of electrodes out of 384 total electrodes?
    I've been trying to select a certain set of electrodes using Recording Node, but it doesn't help.

Thanks for your help in advance.

@jsiegle
Copy link
Member

jsiegle commented Dec 8, 2020

Using load_open_ephys_binary.m, the following code should create a memory map of the .dat file, rather than loading it into memory (the 2 indicates the index of the recorded file, which is likely 1 for the AP band, and 2 for the LFP band):

D = load_open_ephys_binary(<path_to_oebin_file>, 'continuous', 2, 'mmap')

Then, you can select a range of electrodes or samples with the following line:

D.Data.Data(1).mapped(startChannel:endChannel, startSample:endSample)

Let me know if that works, and if not we can keep trying to troubleshoot!

@obsee
Copy link
Author

obsee commented Dec 9, 2020

It's working!!!
I missed '' for the mmap. It is quite embarrassing.
Thanks.

@jsiegle
Copy link
Member

jsiegle commented Dec 9, 2020

Glad it worked! Just keep in mind that the memory-mapped values are 16-bit integers, and must be multiplied by 0.195 in order to convert to the true sample values in microvolts. This will automatically change the data type to "double" (which takes up 4x more memory), so you should only do this on a small subset of the data at a time.

@macayladonegan
Copy link

I'm trying to load the 'continuous.dat' file, but I can't locate the structure.oebin file-what could have gone wrong/can I just import a standard oebin file for these recordings?

@jsiegle
Copy link
Member

jsiegle commented Feb 3, 2021

I'm not sure what might have gone wrong in this case. But this file shouldn't change between experiments, so you can just re-use one from a previous recording.

@macayladonegan
Copy link

I actually can't find one from any of the recordings I've done- can you think of another work around?

@jsiegle
Copy link
Member

jsiegle commented Feb 3, 2021

Have you been using the NPX extractor or recording directly to the Binary format?

Either way, let me know how many probes are in your experiment, and I can send you an .oebin file that will work.

@macayladonegan
Copy link

NPX extractor, just 1. thank you!

@jsiegle
Copy link
Member

jsiegle commented Feb 3, 2021

Ok, try this one!

structure.oebin.zip

@macayladonegan
Copy link

hmm ok now I'm getting this error:
Error using load_open_ephys_binary (line 74)
Data folder not found

And it looks like the script is looking for a file called Neuropix-PXI-100.1 which I also don't have in my output from NPX extractor, did I do something wrong during the extraction?

@jsiegle
Copy link
Member

jsiegle commented Feb 3, 2021

If the folder names are different, just replace the folder_name entries in the .oebin file to match with the names of your actual data directories. The first one is the AP Band, the second one is the LFP Band

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants