Common preprocessing steps

Reading raw data and plotting

Load the spant package:

library(spant)

Load some example data for preprocessing:

fname <- system.file("extdata", "philips_spar_sdat_WS.SDAT", package = "spant")
mrs_data <- read_mrs(fname, format = "spar_sdat")

Plot the spectral region between 4 and 0.5 ppm:

plot(mrs_data, xlim = c(4, 0.5))

Apply a 180 degree phase adjustment and plot:

mrs_data_p180 <- phase(mrs_data, 180)
plot(mrs_data_p180, xlim = c(4, 0.5))

Apply 3 Hz Guassian line broadening:

mrs_data_lb <- lb(mrs_data, 3)
plot(mrs_data_lb, xlim = c(4, 0.5))

Zero fill the data to twice the original length and plot:

mrs_data_zf <- zf(mrs_data, 2)
plot(mrs_data_zf, xlim = c(4, 0.5))

Apply a HSVD filter to the residual water region and plot together with the original data:

mrs_data_filt <- hsvd_filt(mrs_data)
stackplot(list(mrs_data, mrs_data_filt), xlim = c(5, 0.5), y_offset = 10,
          col = c("black", "red"), labels = c("original", "filtered"))

Apply a 0.1 ppm frequency shift and plot together with the original data:

mrs_data_shift <- shift(mrs_data, 0.1, "ppm")
stackplot(list(mrs_data, mrs_data_shift), xlim = c(4, 0.5), y_offset = 10,
          col = c("black", "red"), labels = c("original", "shifted"))

Multiple processing commands may be conveniently combined with the pipe operator “|>” :

mrs_data_proc <- mrs_data |> hsvd_filt() |> lb(2) |> zf()
plot(mrs_data_proc, xlim = c(5, 0.5))