sddssmooth smooths columns of data using multipass nearest-neighbor averaging and/or despiking. Any number of columns may be smoothed. The smoothed data may be put in place of the original data, or included as a new column.
Nearest-neighbor averaging involves repeatedly replacing each point by the average of its N nearest-neighbors; this is the type of smoothing that is done if nothing is specified. Despiking consists of replacing the most extreme of N nearest neighbors with the average of the same points; the most extreme point is the one with the largest mean absolute difference from the other points.
sddssmooth data.fft data.peaks -column=FFTamplitude
sddssmooth [-pipe=[input][,output]] [inputfile] [outputfile] -columns=name[,name...] [-points=oddInteger] [-passes=integer] [-SavitzkyGolay=left,right,order,[derivativeOrder]] [-despike[=neighbors=integer][,passes=integer]] [-newColumns] [-differenceColumns] [-medianFilter=widowSize=integer]
inputFile contains the data to be smoothed. outputFile contains all of the array and parameter data from inputFile, plus at least one column for every column in inputFile. Columns that are not smoothed will appear unchanged in outputFile. If inputFile contains multiple pages, each is treated separately and is delivered to a separate page of outputFile.