cortex-lab / phy

phy: interactive visualization and manual spike sorting of large-scale ephys data
BSD 3-Clause "New" or "Revised" License
304 stars 155 forks source link

Couldn't open phy2 file from other device #1225

Open RunjieTomYi opened 8 months ago

RunjieTomYi commented 8 months ago

Hello!

I was trying to open phy2 on two different windows desktops (on a portable SSD). However, analyzed results from one computer wouldn't open in the other one, and I got error message as such. (The other way worked) Could anyone help figure out what's going wrong? Thanks in advance!

image

zm711 commented 8 months ago

@Doomsday0910,

just to be clear. Phy still worked on the original computer with the ssd. I'm assuming some sort of absolute path got saved into one of the files causing Phy to only work on the computer that originally analyzed the data.

RunjieTomYi commented 8 months ago

@zm711 Thanks for your reply. Yes, it works on the original (1st) computer. However, data analyzed on the 2nd computer can be opened on the 1st computer. Do you have any suggestions on sharing data to be worked on different computers?

zm711 commented 8 months ago

@Doomsday0910

Couple more questions. Are both computers windows? Or are trying to move between OSs? And could you copy and paste whatever it says in the dat_path section of the params.py file here so I can see if that is part of the problem.

RunjieTomYi commented 7 months ago

@zm711

Both computers are windows 10.

In params.py I have dat_path = '../Concat.dat' image

zm711 commented 7 months ago

And what spike sorter are you using to generate this params.py? For KS it usually doesn't save the dir_path, but lets Phy generate the dir_path itself (also how was Concat.dat generated -- you wrote the file itself or you had another program write it ?)

RunjieTomYi commented 7 months ago

I was using Kilosort to generate this data, and my Concat.data comes from multiple consecutive recordings merged with customized code in MATLAB.

zm711 commented 7 months ago

could you try one thing for me? Could you edit the the dat_path to be

dat_path = './Concat.dat'

instead. Normally ./ means search in my current relative directory whereas ../ means go up one folder and search the folder above. I'm curious if that is contributing.

Then if that doesn't work could you try:

dat_path =  'Concat.dat'

as well. I'm just seeing if there if a path based issue.

finally if that doesn't work could you try just deleting the dir_path line for now.

Otherwise it would be helpful for me to know your folder structure. As a simple example let's say I have a folder set

c:/user/documents/data/Concat.dat,

then in dat_path it must either be absolute: dat_path= 'c:/users/documents/data/Concat.dat' or it must be relative dat_path= 'Concat.dat', but in your case it is written as dat_path = '../Concat.dat', which means search in the documents folder for a Concat.dat file, which doesn't exist. If you want to test this you could do something like

from pathlib import Path

dat_path = Path('../Concat.dat')
dat_path.exists() # see if returns true or false
RunjieTomYi commented 7 months ago

I tried changing dat_path and deleting dir_path, they still returned the same error. Testing path search returns True. The file Concat.dat is stored in the folder above, where Kilosort output folder is stored. image

zm711 commented 6 months ago

I see. So the dat_path does need to go to the parent directory. In that case, could you try moving the Concat.dat into the folder and have the dat_path='Concat.dat' and try that. I also want to test if phy is failing to make the file structure. Could you also run:

phy template-gui params.py --debug

Just so I can see if there is extra output in the logger and post here.

My two current hypotheses are:

1) The file tree is being messed up by having the dat in the parent directory (shouldn't be a problem but we should check just in case) 2) There is a cache file that has some absolute path associated with it that is messing things up.

so to also address 2 you need to turn on show hidden files in the file explorer. Then inside your Kilosort folder you should see a .phy folder. Could you show me the contents of that folder (should be some .pkl files.