tidyNano is an R package that imports raw NanoSight data and provides a framework to clean, analyze, and visualize nanoparticle analysis data. You can browse the source code on GitHub.

Check out our manuscript in PLOS ONE!

A representative video of NTA data of murine plasma exosomes from our paper.

NTA of murine plasma exosomes

News (1/2020)

Added new gifs illustrating tidyNano package.

nanolyze() and nanocount() both will ungroup data.

nanoimport() has just been updated to be more flexible and works with NTA versions 3.0 - 3.2! The function should be able to detect and import your data.

We recommend naming your files in snake_case so it’s conducive for processing with the nanotidy() function. With each sample we recommend adding important information so you can parse it out during analysis, be sure to influde the dilution value in the sample name if you do not enter it during the dilution entry box during acquisition. For example you can name your files using the general formula SampleID_Treatment_1500_. Be sure to leave a _ at the end so the NTA software will append your files with a numerical count (00,01,02…) which will serve as way to track your technical replicates.

If you already collected you data and don’t have your dilution in your sample name you can simply add the dilution when you use nanoimport(). Simply add the dilution value in the custom_name argument. If you did label your samples and enter in the dilution in the NTA software during acquisition you can make auto_name == TRUE in nanoimport().


tidyNano functions (Purple) allow for easily extracting and converting raw NTA count data into a tidy dataframe that is suitable for analysis using dplyr and ggplot2. tidyNano also provides a interactive shiny application (shinySIGHT) for visualizing data.

tidyNano also includes a Shiny app named shinySIGHT for interactive visualization of NTA data.