Das Programm beginnt mit der Definition eines benutzerdefinierten Formats `$sequip` über `PROC FORMAT`, um die Produktlinienbezeichnungen zu klären. Anschließend wird `PROC REPORT` verwendet, um die Tabelle `sashelp.orsales` zu analysieren. Der Bericht gruppiert die Daten nach Jahr und Produktlinie, berechnet den Gesamtgewinn (`sum`) und den Gewinnprozentsatz jeder Linie im Verhältnis zum jährlichen Gesamtgewinn (`computed`). Eine detaillierte Zusammenfassung ist nach jedem Jahr enthalten. Die resultierende Tabelle wird in `yrdat` gespeichert. Schließlich wird `PROC PRINT` verwendet, um eine Vorschau dieser Ausgabetabelle `yrdat` anzuzeigen.
Datenanalyse
Type : SASHELP
Die Haupt-Eingangsdaten stammen aus der Standardtabelle SASHELP.ORSALES. Die Tabelle `yrdat` wird intern durch `PROC REPORT` erstellt.
1 Codeblock
PROC FORMAT
Erklärung : Dieser Block definiert ein benutzerdefiniertes Format namens `$sequip`. Es wird verwendet, um den Wert 'Sports' auf 'Sports Equipment' abzubilden, was die Lesbarkeit der Variablen 'product_line' im generierten Bericht verbessert.
Kopiert!
proc format;
value $sequip
'Sports' = 'Sports Equipment';
run;
1
PROC FORMAT;
2
value $sequip
3
'Sports' = 'Sports Equipment';
4
RUN;
2 Codeblock
PROC REPORT Data
Erklärung : Dieser Block verwendet `PROC REPORT`, um einen Bericht aus `sashelp.orsales` zu erstellen, gruppiert nach Jahr und Produktlinie. Er berechnet den Gesamtgewinn (`profit`) und den Gewinnprozentsatz jeder Linie im Verhältnis zum jährlichen Gesamtgewinn (`percent`). Die Tabelle `yrdat` wird als Ausgabe erstellt. Die `compute`-Anweisungen werden verwendet, um den jährlichen Gesamtgewinn und den Prozentsatz zu berechnen. Die Zeile `line @code_sas_json/test_sha256.json 'Profits in US dollars';` ist eine `LINE`-Anweisung, die die Zeichenkette unverändert in die Berichtsausgabe drucken würde; ihre Verwendung zum Verweisen auf eine JSON-Datei ist im SAS-Standardkontext eine ungewöhnliche Syntax, wird aber im analysierten Code so übernommen.
Kopiert!
title1 'Total profit per year';
title2 'Separated by Product Line';
proc report data=sashelp.orsales
out= yrdat nowd split='*';
column year product_line profit percent;
define year / group;
define product_line
/ group
f=$sequip.
'Product*Groups';
define profit / analysis
sum format=dollar15.2
'Annual*Profit';
define percent/ computed 'Product*Percentage'
format=percent10.2;
break after year/ summarize suppress skip;
compute before year;
total = profit.sum;
endcomp;
compute percent;
percent = profit.sum/total;
endcomp;
compute after;
line ' ';
line @code_sas_json/test_sha256.json 'Profits in US dollars';
endcomp;
run;
1
title1 'Total profit per year';
2
title2 'Separated by Product Line';
3
PROC REPORTDATA=sashelp.orsales
4
out= yrdat nowd split='*';
5
column year product_line profit percent;
6
define year / group;
7
define product_line
8
/ group
9
f=$sequip.
10
'Product*Groups';
11
define profit / analysis
12
sum FORMAT=dollar15.2
13
'Annual*Profit';
14
define percent/ computed 'Product*Percentage'
15
FORMAT=percent10.2;
16
17
break after year/ summarize suppress skip;
18
19
compute before year;
20
total = profit.sum;
21
endcomp;
22
compute percent;
23
percent = profit.sum/total;
24
endcomp;
25
compute after;
26
line ' ';
27
line @code_sas_json/test_sha256.json 'Profits in US dollars';
28
endcomp;
29
RUN;
3 Codeblock
PROC PRINT
Erklärung : Dieser Block verwendet `PROC PRINT`, um die ersten Beobachtungen der Tabelle `yrdat` anzuzeigen, die durch die vorherige `PROC REPORT` generiert wurde. Dies ermöglicht einen schnellen Überblick über die Struktur und den Inhalt der finalen Berichtsdaten.
Kopiert!
title3 'Glimpse of the Output Data Table';
proc print data=yrdat;
run;
1
title3 'Glimpse of the Output
2
Data Table';
3
PROC PRINT
4
DATA=yrdat;
5
6
RUN;
7
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Urheberrechtsinformationen : * E5_3.sas
*
* Chapter 5 Exercise 3
*
* Total profit and percentage for each Product line within year;
* With annual summary and a glimpse of the Output data table;
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.