2016-07-19 25 views
1

および999999999でいくつかのセルが栄養化されているdatasetがあります。私はこれらの値を考慮しないで平均を行います。つまり:SASの条件付き平均の機能

x=5, y=10, z=888888888 

平均は5

私はどのように修正することができますでしょうか?

答えて

0

変数全体を計算する際には、配列に格納してループし、必要なしきい値(100,000,000を使用しました)よりも小さいものを合計し、次に取得する変数の合計数で割ります平均。

data have; 
input x y z; 
datalines; 
5 10 888888888 
4 20 999999999 
; 
run; 


data want; 
set have; 
array vars{*} x y z; 
_sum=0; 
do _i = 1 to dim(vars); 
    if vars{_i}<1e8 then _sum+vars{_i}; 
end; 
mean_vars = _sum/dim(vars); 
drop _: ; 
run; 
関連する問題