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

cluster quality values as 'NaN' and 'inf' in Klustaviewa #63

Open
salazarr opened this issue Sep 16, 2016 · 11 comments
Open

cluster quality values as 'NaN' and 'inf' in Klustaviewa #63

salazarr opened this issue Sep 16, 2016 · 11 comments

Comments

@salazarr
Copy link

Hi,

After a few changes of configurations, I have been getting 'inf' or 'nan' values for some clusters and zeros or ones in others in klustaviewa. I have been tracking down where this can come from but has been unsuccessful so far.

Any help or idea would be very helpful, thanks?

In the past, I have been using single 32channels polytrodes and single 64channels buszaki probes and I was having normal cluster quality values. Unfortunately, I made a few changes before noticing the problem of 'inf' and 'nan' values.

These are:

  1. upgrade of the klusta
  2. dual recordings with two polytrodes and thus changes in the *.prb file

I believe that the problem comes from the probe file but I cannot figure what it is. You can find its content at the end of the email. Let me know if other files are needed

Thanks for your help,

Rodrigo.

channel_groups = {
0: {'channels': list(range(32)),
'geometry':{31: (-1, -15),
30: (0, 0),
29: (9, 15),
28: (-14, 30),
27: (19, 45.0),
26: (-24, 60.0),
25: (29, 75),
24: (-34, 90),
23: (39, 105),
22: (-44, 130),
21: (49, 145),
20: (-54, 160),
19: (59, 175),
18: (-64, 190),
17: (69, 205),
16: (-74, 220),
15: (79, 235),
14: (-84, 250),
13: (89, 265),
12: (-94, 280),
11: (99, 295),
10: (-104, 310),
9: (109, 325),
8: (-114, 340),
7: (119, 355),
6: (-124, 370),
5: (129, 385),
4: (-134, 400),
3: (139, 415),
2: (-144, 430),
1: (149, 445),
0: (-154, 460),},
'graph': [(0, 1), (0, 2),
(1, 2), (1, 3),
(2, 3), (2, 4),
(3, 4), (3, 5),
(4, 5), (4, 6),
(5, 6), (5, 7),
(6, 7), (6, 8),
(7, 8), (7, 9),
(8, 9), (8, 10),
(9, 10), (9, 11),
(10, 11), (10, 12),
(11, 12), (11, 13),
(12, 13), (12, 14),
(13, 14), (13, 15),
(14, 15), (14, 16),
(15, 16), (15, 17),
(16, 17), (16, 18),
(17, 18), (17, 19),
(18, 19), (18, 20),
(19, 20), (19, 21),
(20, 21), (20, 22),
(21, 22), (21, 23),
(22, 23), (22, 24),
(23, 24), (23, 25),
(24, 25), (24, 26),
(25, 26), (25, 27),
(26, 27), (26, 28),
(27, 28), (27, 29),
(28, 29), (28, 30),
(29, 30), (29, 31),
(30, 31),]},
1: {'channels': [32, 33, 34, 35, 36, 37, 38, 39],
'geometry': {32: (39, 105),
33: (-34, 90),
34: (29, 75),
35: (-24, 60.0),
36: (19, 45.0),
37: (-14, 30.0),
38: (9, 15.0),
39: (0.0, -15.0),},
'graph': [(32, 33), (32, 34),
(33, 34),(33, 35),
(34, 35), (34, 36),
(35, 36), (35, 37),
(36, 37), (36, 38),
(37, 38), (37, 39),
(38, 39),]},
2: {'channels': [40, 41, 42, 43, 44, 45, 46, 47],
'geometry': {40: (39, 105),
41: (-34, 90),
42: (29, 75),
43: (-24, 60.0),
44: (19, 45.0),
45: (-14, 30.0),
46: (9, 15.0),
47: (0.0, -15.0),},
'graph': [(8+32, 9+32), (8+32, 10+32),
(9+32, 10+32), (9+32, 11+32),
(10+32, 11+32), (10+32, 12+32),
(11+32, 12+32), (11+32, 13+32),
(12+32, 13+32), (12+32, 14+32),
(13+32, 14+32), (13+32, 15+32),
(14+32, 15+32),]},
3: {'channels': [48, 49, 50, 51, 52, 53, 54, 55],
'geometry': {48: (39, 105),
49: (-34, 90),
50: (29, 75),
51: (-24, 60.0),
52: (19, 45.0),
53: (-14, 30.0),
54: (9, 15.0),
55: (0.0, -15.0),},
'graph': [(16+32, 17+32), (16+32, 18+32),
(17+32, 18+32), (17+32, 19+32),
(18+32, 19+32), (18+32, 20+32),
(19+32, 20+32), (19+32, 21+32),
(20+32, 21+32), (20+32, 22+32),
(21+32, 22+32), (21+32, 23+32),
(22+32, 23+32),]},
4: {'channels': [56, 57, 58, 59, 60, 61, 62, 63],
'geometry': {56: (39, 105),
57: (-34, 90),
58: (29, 75),
59: (-24, 60.0),
60: (19, 45.0),
61: (-14, 30.0),
62: (9, 15.0),
63: (0.0, -15.0),},
'graph': [(24+32, 25+32), (24+32, 26+32),
(25+32, 26+32), (25+32, 27+32),
(26+32, 27+32), (26+32, 28+32),
(27+32, 28+32), (27+32, 29+32),
(28+32, 29+32), (28+32, 30+32),
(29+32, 30+32), (29+32, 31+32),
(30+32, 31+32),]},
5: {'channels': [64, 65, 66, 67, 68, 69, 70, 71],
'geometry': {64: (39, 105),
65: (-34, 90),
66: (29, 75),
67: (-24, 60.0),
68: (19, 45.0),
69: (-14, 30.0),
70: (9, 15.0),
71: (0.0, -15.0),},
'graph': [(32+32, 33+32), (32+32, 34+32),
(33+32, 34+32), (33+32, 35+32),
(34+32, 35+32), (34+32, 36+32),
(35+32, 36+32), (35+32, 37+32),
(36+32, 37+32), (36+32, 38+32),
(37+32, 38+32), (37+32, 39+32),
(38+32, 39+32),]},
6: {'channels': [72, 73, 74, 75, 76, 77, 78, 79],
'geometry': {72: (39, 105),
73: (-34, 90),
74: (29, 75),
75: (-24, 60.0),
76: (19, 45.0),
77: (-14, 30.0),
78: (9, 15.0),
79: (0.0, -15.0),},
'graph': [(40+32, 41+32), (40+32, 42+32),
(41+32, 42+32), (41+32, 43+32),
(42+32, 43+32), (42+32, 44+32),
(43+32, 44+32), (43+32, 45+32),
(44+32, 45+32), (44+32, 46+32),
(45+32, 46+32), (45+32, 47+32),
(46+32, 47+32),]},
7: {'channels': [80,81, 82, 83, 84, 85, 86, 87],
'geometry': {80: (39, 105),
81: (-34, 90),
82: (29, 75),
83: (-24, 60.0),
84: (19, 45.0),
85: (-14, 30.0),
86: (9, 15.0),
87: (0.0, -15.0),},
'graph': [(48+32, 49+32), (48+32, 50+32),
(49+32, 50+32), (49+32, 51+32),
(50+32, 51+32), (50+32, 52+32),
(51+32, 52+32), (51+32, 53+32),
(52+32, 53+32), (52+32, 54+32),
(53+32, 54+32), (53+32, 55+32),
(54+32, 55+32),]},
8: {'channels': [88, 89, 90, 91, 92, 93, 94, 95],
'geometry': {88: (39, 105),
89: (-34, 90),
90: (29, 75),
91: (-24, 60),
92: (19, 45),
93: (-14, 30),
94: (9, 15),
95: (0, -15),},
'graph': [(56+32, 57+32), (56+32, 58+32),
(57+32, 58+32), (57+32, 59+32),
(58+32, 59+32), (58+32, 60+32),
(59+32, 60+32), (59+32, 61+32),
(60+32, 61+32), (60+32, 62+32),
(61+32, 62+32), (61+32, 63+32),
(62+32, 63+32),]
}
}

@rossant
Copy link
Member

rossant commented Sep 19, 2016

Hi, could you send me your dataset?

@salazarr
Copy link
Author

Hi

I sent you some data a while ago but I guess that you did not receive them. Here they are again in case.

@salazarr salazarr reopened this Sep 27, 2016
@salazarr
Copy link
Author

Archive 2.zip

@salazarr
Copy link
Author

the .dat is too big to be downloaded any other option?

@rossant
Copy link
Member

rossant commented Sep 27, 2016

could you use a file sharing service like dropbox or https://www.wetransfer.com/ or https://www.transfernow.net/ ?

@salazarr
Copy link
Author

You should have receive an email with a link.

If not here it is:

https://we.tl/pVgyJY5v7F

I also noticed this message on the terminal:

(klusta)salazarr@salazarr-Precision-WorkStation-T7500 /media/salazarr/datadrive/electrophy/20160916/session01 $ klustaviewa 2016091601.prm
/home/salazarr/miniconda3/envs/klusta/lib/python2.7/site-packages/IPython/qt.py:13: ShimWarning: The IPython.qt package has been deprecated. You should import from qtconsole instead.
"You should import from qtconsole instead.", ShimWarning)
2016-09-28 09:55:55 kwikloader:134 Opening 2016091601.prm.
/home/salazarr/miniconda3/envs/klusta/lib/python2.7/site-packages/numpy/core/_methods.py:55: RuntimeWarning: Mean of empty slice.
warnings.warn("Mean of empty slice.", RuntimeWarning)

Thanks,

R.

@rossant
Copy link
Member

rossant commented Sep 29, 2016

Thanks, I can reproduce the problem, but I'm not sure what causes it. Could you try with the phy KwikGUI? The computation of the similarity should be more robust.

@salazarr
Copy link
Author

Hi Cyrille,

I can run phy kwik-gui and I can find real values in the 'SimilarityView' window under the column 'similarity'. There are two clusters with values zeros and all other clusters have values up to 373...

Does this mean that you suggest to use phy kwik-gui to do the clustering?

@rossant
Copy link
Member

rossant commented Sep 29, 2016

KlustaViewa is on the deprecation road and is being replaced by phy, which will be maintained on the long term. I would suggest that if you have problems with KlustaViewa, you try to use phy. Please let me know if you have any question or issue!

@salazarr
Copy link
Author

Thanks for the info. In a first sight, phy appears quite natural but I cannot find the way to switch between shanks? Do you have a guideline or on-line help to suggest?

Thanks,

Rodrigo.

@rossant
Copy link
Member

rossant commented Sep 29, 2016

You have to specify the channel group when launching the GUI:

phy kwik-gui file.kwik --channel-group 3

There is no documentation of the GUI yet, unfortunately... There is documentation for the TemplateGUI instead, which is another slightly different GUI that is used not with klusta, but with template matching algorithms such as KiloSort and SpykingCircus (used on channels with hundreds of probes).

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