Computes a proportional trimmed mean that resolves the
integer truncation problem of base R's mean(..., trim). When
k = trim * n is non-integer, a fractional discount (1 - delta) is
applied to boundary observations, where delta = k - floor(k).
The resulting estimator is continuous in alpha for any fixed n,
syntactically identical to mean(..., trim), and compatible with
the 'Statgraphics' implementation. See Gaviria Chaverra (2026)
sgmean computes the trimmed mean using a proportional discount method
on the extremes, replicating the behavior of Statgraphics software.
Unlike R’s built-in mean(..., trim), which removes boundary values
entirely, sgmean applies a weighted reduction — producing results
consistent with Statgraphics.
You can install sgmean from GitHub with:
# install.packages("devtools")
devtools::install_github("jcarlosgaviria/sgmean")
library(sgmean)
x <- c(2, 4, 6, 8, 100)
# sgmean method (Statgraphics compatible)
sgmean(x, trim = 0.05)
# Base R method (different result)
mean(x, trim = 0.05)
Juan Carlos Gaviria Chaverra