Applying NBLAST on SWC files

116 views
Skip to first unread message

Ajayrama Kumaraswamy

unread,
May 6, 2015, 10:07:46 AM5/6/15
to nat-...@googlegroups.com
Dear members of the NBLAST team,

I have a set of neurons represented in SWC format. I would like to compare them using NBLAST. I have the following questions:

1. I understand that NBLAST required input neurons to be represented as a set of point-tangent vector pairs. Could you point me to some documentation on this representation? The NBLAST-paper refers to Masse et.al. 2012 for this, but I could not figure out the input format from this paper.

2. Is there a way to convert SWC files to point-tangent vector format so as to apply NBLAST on them?

Thanks
Ajay

---
Ajayrama Kumaraswamy
Doctoral Student in Computational Neuroscience
Institute for Biology II
Ludwig-⁠Maximilians-⁠Universität München
Großhaderner Straße 2
D-⁠82152 Planegg-⁠Martinsried

Greg Jefferis

unread,
May 6, 2015, 10:26:48 AM5/6/15
to nat-...@googlegroups.com
Dear Ajay,

Many thanks for your interest in this work. As a general comment, I think you might find it interesting to go through this worked example.


which carries out an nblast clustering on some monarch butterfly neurons (this is the latest example I have worked on, so bugs are possible and reports are welcome).

On Wednesday, May 6, 2015 at 3:07:46 PM UTC+1, Ajayrama Kumaraswamy wrote:
 
I have a set of neurons represented in SWC format. I would like to compare them using NBLAST. I have the following questions:

1. I understand that NBLAST required input neurons to be represented as a set of point-tangent vector pairs. Could you point me to some documentation on this representation? The NBLAST-paper refers to Masse et.al. 2012 for this, but I could not figure out the input format from this paper.

You do not need to prepare these yourself (see below). The best documentation for this representation is the code that generates it:

 
2. Is there a way to convert SWC files to point-tangent vector format so as to apply NBLAST on them?

Yes, you can do this directly in R using the function dotprops (see ?dotprops). Complete simple example below:


beeneurons=read.neurons("/dir/containing/my/swcs")
beeneurons.dps=dotprops(beeneurons)
# nb depending on how your neurons were resampled and the physical scale of the neurons
# it may be a good idea to resample to a regular spacing e.g. to 5 µm spacing
# (what I used for the monarch butterfly neurons in the example above
# can also add a progress bar for good measure
beeneurons.dps=dotprops(beeneurons, resample=5, .progress='text')
abascores=nblast_allbyall(beeneurons.dps)
aba.hclust=nhclust(scoremat= abascores)
plot(aba.hclust)
# assuming it looked like 3 clusters made sense, you can colour the different clusters in 3d like:
plot3d(aba.hclust, k=3, db= beeneurons)


I hope this gets you started. Let us know if you have more questions!

Best wishes,

Greg. 
Reply all
Reply to author
Forward
0 new messages