To avoid replacing missing values, you must exclude missing values from the lower range (they rank as minus infinity) : do _V=1 to dim(val); if . < val{_V} < wlo{_V} then val{_V} = wlo{_V}; else if val{_V} > whi{_V} then val{_V} = whi{_V}; end; you might need a retain statement on the _winsor variables. PG
... View more