Travis-CI Build Status CRAN_Status_Badge Total_Downloads


Reading ASD Binary Files in R


This package implements a simple reader for spectroscopy data collected using ASD (now PAN Analytics, Inc.) visible near-infrared spectrometers, and stored using the ASD format (which is documented here).

The spectra can be extracted from the ASD file as raw (DN), white reference, radiance, or reflectance. Additionally, the metadata information contained in the ASD file header can also be accessed.


It’s easiest to install asdreader from CRAN:


Alternatively, you can use the devtools package to install asdreader:



The main function is get_spectra. It takes one (or more) paths to *.asd files and returns a matrix of spectra. The other potentially useful function is get_metadata, which returns the contents of the header of a a given *.asd file.

A sample *.asd file is included for testing/examples purposes. The path to this sample file can be access using the shorthand function asd_file().

fn <- asd_file()
s <- get_spectra(fn)
plot(as.numeric(s), type = 'l')

or, for the pipe afficionados:

asd_file() %>% 
  get_spectra %>% 
  as.numeric %>% 
  plot(type = 'l')

This package has been developed working on *.asd files in version 8 (that’s my setup), along with some of the documentation that can be found online. In particular, reading code from @serbinsh (here) and @antoinestevens (here) proved to be helpful.

I’m sure this thing could probably become better with help from people with different setups/file format versions — contributions welcome!