Still some bugs are present in spider classify protocols:
[x] Click Analyze results after running Spider - classify Ward, visualize class averages, select some classes, click Classes to save a new subset --> error message:
Traceback (most recent call last):
File "/home/azazello/soft/scipion/pyworkflow/em/packages/spider/viewer_classify.py", line 188, in _createSubsetProtocol
createOutputFunc(prot)
File "/home/azazello/soft/scipion/pyworkflow/em/packages/spider/viewer_classify.py", line 214, in createClasses
self.protocol._fillClassesFromNodes(classes, selectedNodes)
File "/home/azazello/soft/scipion/pyworkflow/em/packages/spider/protocol/protocol_classify_base.py", line 175, in _fillClassesFromNodes
itemDataIterator=iter(range(1, particles.getSize()+1)))
File "/home/azazello/soft/scipion/pyworkflow/em/data.py", line 1439, in classifyItems
updateItemCallback(newItem, row)
File "/home/azazello/soft/scipion/pyworkflow/em/packages/spider/protocol/protocol_classify_base.py", line 165, in <lambda>
updateItem = lambda p, i: p.setClassId(classDict[i].classId)
KeyError: 1
[x] Classify Diday doesn't work with SEQ files (after CA/PCA), so we should prevent user from using them in input form.
[x] Just not to forget this one: dendrogram for spider - classify Diday is missing some particles. The number of missing ones is not constant as we thought before.
[X] Click Analyze results after running Spider - classify Ward, visualize class averages, select some classes, click Classes to save a new subset --> error message: (This was because we were not considering that the classes selection could contains only a subset of the particles, so we should consider that some particles will not be present. For this we should set _appendItem = False for classifyItems.
[X] Classify Diday doesn't work with SEQ files (after CA/PCA), so we should prevent user from using them in input form. (Now simply check that the input file does not contain SEQ in its name)
[X] Just not to forget this one: dendrogram for spider - classify Diday is missing some particles. The number of missing ones is not constant as we thought before. (Finally fixed the parsing of the dendogram, test for both Ward and Diday)
Still some bugs are present in spider classify protocols: