Open mikeblazanin opened 1 year ago
Perhaps a smooth_data method that is like moving average but with a variable slope too? For this, could also then use the moving-lm function as the backend for calc_deriv when n > 2. Perhaps moving-lm could just have a return argument that allows the slope, the fitted, value, the R2, or anything else that lm outputs to be chosen
AMiGA pretty extensively builds their approach on Gaussian process regression, which is a form of smoothing in gcplyr's framework
Video on using GAM's: https://twitter.com/nj_clark/status/1638616403476611072?t=1Iy5VRT5EonVOmvEc4MYgg&s=19
Also perhaps variants of moving-average, like exponential moving average
Also see stats::runmed and stats::supsmu
See built-in R function ksmooth, package KernSmooth
https://rafalab.dfci.harvard.edu/dsbook-part-2/ml/smoothing.html
27 calls for splines (R built-in method smooth.spline) and lowess to be added
49 calls for Savitzky-Golay to be added (which may simply be a general case of loess?)
88 calls for better clarification of artifact-creation issues related to gam smoothing (esp oscillations in densities when near 0 and in derivatives)
This issue is for a broader and better understanding of what smoothing methods are best, what the main families of smoothing methods are, when to use them, their pros/cons, etc. I'm closing the three sub-issues and re-routing them all to this one, since I think smoothing needs a broad overhaul (not in coding/implementation, but in understanding and explanation in the vignette). So far it feels like I've just been adding the smoothing methods I hear about, without understanding the big picture in statistics of what general smoothing approaches there are. Once I understand that big picture, then I can understand what methods to include/exclude and recommend/not recommend