Standard Normal Variate (SNV: Other way)
This is another way to pre-treat aspectra set with the SNV math-treatment
(Standard Normal Variate). You can see the other one in the post :
In this post, I use the R function “sweep“.
#in a first step I calculate the average value
#of all the data points for every spectrum and
#subtract it to every data point of the
#spectrum using the function “colMeans”
#from the package “ChemometricsWhithR”
#the mean value for every spectrum is now cero.
#sd function calculates the SD for all the data
#points of every #spectrum.
#We divide now the value of every data point
#by the SD of all the values of that spectrum.
#Now the spectrum has a mean of cero and a SD of 1.
#Use matplot to plot the spectra.
+main=”SNV Gasoline Spectra”,col=”blue”)
We have to take consider that in the Gasoline matrix, the rows are the
samples and the columns the wavelengths, so we have to transpose the matrix
Gasoline is a data set included in the “pls” package. Is not a set to see the benefits
of the SNV math treatment (not enough scatter), but you can try
with other data sets as “yarn”.
To leave a comment
for the author, please follow the link and comment on his blog: NIR-Quimiometria
offers daily e-mail updates
news and tutorials
on topics such as: visualization (ggplot2
), programming (RStudio
, Web Scraping
) statistics (regression
, time series
) and more...
If you got this far, why not subscribe for updates
from the site? Choose your flavor: e-mail
, or facebook