Processing

Image above shows RRUFF's raw data for specimen R100166 after processing by Excalibur Mineral in Python
using Savitzky-Golay (AKA moving average/moving polynomial; for smoothing) filter and Asymmetric Least Squares correction for baseline correction (also does some smoothing).
Raw Data
Compare to the RRUFF's processed result: R100166
More recent test of B-ALS:
Raw Data
When setting the B-ALS parameters, keep the baseline estimate (blue)
below the raw data (red) or you will lose information.
A more recent version of the python code can also use CrystalSleuth's baseline correction.