data(NIRsoil)
wav <- as.numeric(colnames(NIRsoil$spc))
# adding some noise
NIRsoil$spc_noise <- NIRsoil$spc + rnorm(length(NIRsoil$spc), 0, 0.001)
matplot(wav,
t(NIRsoil$spc_noise[1:10, ]),
type = "l",
lty = 1,
xlab = "Wavelength /nm",
ylab = "Absorbance",
col = "grey"
)
# window size of 11 bands
NIRsoil$spc_mov <- movav(NIRsoil$spc_noise, w = 15)
# smoothed data
matlines(as.numeric(colnames(NIRsoil$spc_mov)),
t(NIRsoil$spc_mov[1:10, ]),
type = "l",
lty = 1
)
Run the code above in your browser using DataLab