Unterschiedliche Ergebnisse bei Summierung mit PROC MEANS und SQL
Hallo,
vielleicht kann mit hier jemand weiterhelfen.
Ich bekomme unterschiedliche Observations bei Summierung mit PROC MEANS und mit SQL.
Hier SAS-LOG-Auszüge:
-------------------------------------------------------------------------------------
107 proc means
108 data=work.ASSET_20091113 noprint nway;
109 var all_vol all_prov;
110 class dim_fil dim_prc dim_kdnr ip_id awpkn ART budat STORNO;
111 output out=WORK.asset_smy (drop=_type_ _freq_ )
112 sum(all_vol)=
113 sum(all_prov)=;
114 run;
HINWEIS: Es wurden 272 Beobachtungen aus der Datei WORK.ASSET_20091113. ausgelesen
HINWEIS: Die Datei WORK.ASSET_SMY weist 122 Beobachtungen und 10 Variablen auf.
HINWEIS: PROZEDUR MEANS benötigt. (Gesamtverarbeitungszeit):
Echtzeit 0.15 Sekunden
CPU-Zeit 0.03 Sekunden
-------------------------------------------------------------------------------------
115 proc sql;
116 create table work.asset_smy1 as
117 select dim_fil, dim_prc, dim_kdnr, ip_id, awpkn, ART, budat, STORNO
118 ,sum(all_vol) as all_vol
119 ,sum(all_prov) as all_prov
120 from work.ASSET_20091113
121 group by dim_fil, dim_prc, dim_kdnr, ip_id, awpkn, ART, budat, STORNO
122 ;
HINWEIS: Tabelle WORK.ASSET_SMY1 wurde erstellt mit 268 Zeilen und 10 Spalten.
123 quit;
HINWEIS: PROZEDUR SQL benötigt. (Gesamtverarbeitungszeit):
Echtzeit 0.07 Sekunden
CPU-Zeit 0.00 Sekunden
-------------------------------------------------------------------------------------
Das 2. Ergebnis ist m. E. richtig. Aber warum funktioniert die Summierung mit PROC MEANS nicht (ist auch mit PROC SUMMARY nicht richtig, hab's probiert).
Für Hilfe wäre ich hier sehr dankbar. Oft sitzt man ja vor so einem Problem und erkennt den einfachsten fehler nicht mehr.
Gruß aus Frankfurt
Dieter
- Anmelden oder Registrieren um Kommentare zu schreiben

MISSING-Values
Hallo,
vermutlich treten bei einigen Ihrer CLASS-Variablen MISSING-Values auf. Standardmässig überliesst PROC MEANS (und SUMMARY) diese Datensätze und werte sie nicht mit aus.
Durch das Setzen der MISSING-Option können Sie dieses Verhalten übersteuern.
Viel Erfolg
Lutz Ritter
Danke vielmals, mit der
Danke vielmals, mit der MISSING-Options funktionierts richtig :)