是否有一个公式可以规范化范围内的值,使其平均值等于范围的中间值?
例如,如果我有值
1,2,3,4,4,5
(注意它们在1-5的范围内)然后我想要调整每个值,使它们的平均值等于3(范围的中间)。
答案 0 :(得分:2)
您可以减去平均值并添加3:
select 3 + (t.x - avg(t.x) over ())
from t;
如果你特别想要中间范围:
select (max(t.x) over () + min(t.x) over ()) / 2 + (t.x - avg(t.x) over ())
from t;