Sunteți pe pagina 1din 8

Seminar 5 SAS

1. Analize statistice
Se consideră o agenţie de turism care organizează tururi pentru vizitarea cetăţilor medievale romaneşti.
Rezervări pentru acest tip de ofertă pot fi făcute în filialele sale din Bucureşti şi Sibiu. Avem la dispoziţie,
pentru fiecare luna a anului precedent, date privind cheltuielile cu publicitatea efectuate de fiecare
filială pentru promovarea ofertei (exprimate în moneda Euro), precum şi numărul de rezervări pentru
care s-a depus un avans.

Figura 1. Extras din setul de date


Problema 1: Pentru fiecare filială, să se determine principalii indicatori statistici care caracterizează
cheltuielile cu publicitatea şi numărul de rezervări, prin calcularea: mediei, valorilor minime şi maxime,
amplitudinii şi sumei.
Paşi de urmat:
1. Se crează un proiect nou.
2. Se adaugă la proiect tabela Turism. sas7bdat din directorul cu datele de seminar.
3. Se deschide prelucrarea Describe  SummaryStatistics…
4. Se vor selecta ca variabile de analiză variabilele PubEuro şi Rezervări, iar ca variabillă de
clasificare oraşul.
5. În tab-ul Statistics  Basics bifăm indicatorii statistici pe care dorim să-i calculăm. În lista
Maximum decimal setăm numărul de zecimale la două.
6. Salvaţi rezultatul ca un raport în format HTML.

Problema 2: Să se calculeze, printr-un indicator numeric, dacă cheltuielile de publicitate au avut


influenţă asupra numărului de rezervări.
Paşi de urmat:
1. Având tabela Turism deschisă, selectăm Analize  Multivariate  Correlations…
2. Se vor aloca următoarele roluri: Analysis variables – PubEuro şi Correlate with – Rezervări.
3. Analizaţi rezultatele obţinute.
4. Salvaţi rezultatul ca un raport în format HTML.

Problema 3: Să se evidenţieze grafic forma legăturii dintre cheltuielile de publicitate şi numărul de


rezervări.
Paşi de urmat:
1. Având tabela Turism deschisă, selectăm Graph  Line Plot…  şi selectăm opţiunea Scatter
Plot with Regression Line
2. Se vor aloca următoarele roluri: Horizontal – PubEuro şi Vertical – Rezervări.
3. Analizaţi rezultatele obţinute şi stabiliţi forma legăturii dintre variabile.
4. Salvaţi rezultatul ca un raport în format HTML.

Problema 4: Să se determine ecuaţia legăturii dintre cele două variabile analizate în problemele
precedente.
Paşi de urmat:
1. Având tabela Turism deschisă, selectăm Analyze  Regression  Linear Regression…
2. Alocaţi corect rolurile prelucării.
3. Analizaţi rezultatele obţinute şi identificaţi coeficienţii ecuaţiei de regresie listaţi în coloana
Parameter Estimate.

Problema 5: Datele conţin numărul de curse dintre doua localităţi şi sunt împărţite după
momentul zilei in care cursa trebuia sa plece si arata daca a existat o întârziere mai mare de 15
minute. Obiectivul este sa se determine daca este o legătura între momentul zilei şi
punctualitate.
Paşi de urmat:
1. Să se importe fişierul Trenuri.xls
2. Din fluxul de procese, selectăm Tasks Describe Table Analysis
3. Se procedează ca în capturile de ecran:
Rezultatul conţine o tabelă de frecvenţe şi este urmată de teste de asociere, incluzând date
pentru testul Fisher. Conform acestui test, în acest exemplul, probabilitatea de a obţine o
valoare chi-pătrat cel puţin egală cu cea din tabel (24,1388) este mai mică de 0,0001.
Exerciţiu: Importaţi fişierul Tratamente.xlsx şi identificaţi legătura dintre aplicarea unor
tratamente şi modificarea activităţii inimii. Fişierul conţine numărul de persoane care au fost sau
nu supuse unor tratamente şi care au sau nu pulsul modificat. Obiectivul este să se determine
daca există o legătura între aplicarea tratamentelor şi activitatea inimii. Modificaţi datele
importate astfel încât numărul de persoane fără tratamente cu pulsul crescut scade de la 30 la
29, iar numărul de persoane fără tratamente cu pulsul normal creşte de la 25 la 26. Reluaţi
analiza şi interpretaţi rezultatele.

2. Prognoze cu modelul ARIMA


(AutoRegresive Integrated Moving Average)
Problema1: Se doreşte realizarea unei prognoze cu ajutorul modelului ARIMA. Datele de intrare
sunt formate din înregistrările din 10 în 10 minute, începând de la 01.01.2014 până la
31.03.2014 (ora 19:50) a puterii produse de un panou solar pentru asigurarea apei calde
menajere. Datele au fost prelucrate, puterea generată fiind raportată la puterea maximă
generată.

În exemplul următor vom realiza prognoza pe termen scurt pentru următoarele 23, respectiv 12
de intervale de timp (cca. 4, respectiv 2 ore).
Importăm în SAS datele de intrare (peste 50,000 de înregistrări) stocate în fişierul
time_series_prognoza.xlsx.
În continuare, sunt descrise câteva forme ale modelului ARIMA(p,d,q):
- model autoregresiv ARIMA(p,0,0) , de ordin p
- model cu medie mobilă ARIMA(0,0,q), de ordin q
- model mixt ARIMA (p,0,q), cunoscut şi ca ARMA
- model autoregresiv integrat si medie mobile ARIMA(p,d,q), unde d este ordinul de
diferenţiere.
Pentru a aplica modelul ARIMA (1,0,0) vom selecta Tasks  Time Series Arima Modeling and
Forecasting.
Pentru setarea analizei urmăm paşii:
În tabul Data selectăm Norm pentru Time series variable şi Write time pentru Time ID variable.
În tabul Estimation  Enable estimation steps bifăm Perform estimation steps. În tabul Model
definition, adăugăm 1 în caseta Factors for AR model. În tabul Forecasting  Enable
forecasting steps, bifăm Perform forecasting steps. În tabul Options, la Time interval between
option selectăm Number of units, la Time units per interval introducem 600, iar la Number of
intervals to forecast introducem 23. În tabul Plots and Results, bifăm Forecasts şi Save
forecasts.
Run
În tabul Results obţinem un raport pe care îl analizăm. În tabul Output Data exportăm
rezultatele într-un fişier Excel pentru a calcula eroarea medie absolută în procente - MAPE
(Mean Absolute Percentage Error). Se vor prelua din fişierul time_series_complet.xls datele
efectiv înregistrate din 31.12.2014 (de la 20:00 la 23:50) şi se vor compara cu datele din aceeaşi
perioadă, prognozate cu modelul ARIMA.
Acest indicator statistic arată acurateţea modelului. MAPE (eroarea medie absolută în procente)
calculat pentru 4 ore din 31.12.2014 este 13,32%, iar MAPE pentru 2 ore este 9,58%.

Pentru a aplica modelul ARIMA (1,1,1), pornind de la fişierul importat


time_series_prognoza.xlsx, vom selecta Tasks  Time Series Arima Modeling and
Forecasting.
Pentru setarea analizei urmăm paşii:
Vom selecta din tabul IdentificationDifferencing şi bifăm Difference the responce series,
Differencing lags = 1 (dacă nu este introdus).
În tabul Estimation  Enable estimation steps bifăm Perform estimation steps. În tabul Model
definition, adăugăm 1 în caseta Factors for AR model şi 1 în caseta Factors for MA model. În
tabul Forecasting  Enable forecasting steps, bifăm Perform forecasting steps. În tabul
Options, la Time interval between option selectăm Number of units, la Time units per interval
introducem 600, iar la Number of intervals to forecast introducem 23. În tabul Plots and
Results, bifăm Forecasts şi Save forecasts.
Run
În tabul Results obţinem un raport pe care îl analizăm. În tabul Output Data exportăm
rezultatele într-un fişier Excel pentru a calcula eroarea medie absolută în procente - MAPE
(Mean Absolute Percentage Error). Se vor compara datele efectiv înregistrate din fişierul
time_series_complet.xls cu datele prognozate. MAPE calculat pentru 4 ore din 31.12.2014 este
4,76%, iar MAPE pentru 2 ore este 4,51%.

Exerciţiu: Să se realizeze ARIMA (1,0,1) şi ARIMA (0,1,1) pentru setul de date de mai sus, să se
calculeze MAPE pentru 4, respectiv 2 ore şi să se compare cu rezultatele obţinute cu ARIMA
(1,0,0) şi ARIMA (1,1,1).

3. Grafice de tip hartă


Problema 1: Se doreste realizarea unei harti pe baza datelor din tabelele SAS ROMANIA si
ROMANIA2, ce contin informatii referitoare la reprezentarea geografica a judetelor din Romania
(printr-un camp de tip GeoRef, respectiv latitudinea si longitudinea punctelor de pe granita
judetelor). In harta reprezentata se va afisa venitul pe judete, generat ca numar aleator in jurul
valorii de 500.000.
Paşi de urmat:
1. Se deschide fisierul de date SAS ROMANIA2, situat pe Server in Libraries/Maps
2. Pornind de la acest fisier se realizeaza o interogare ce va contine toate campurile
fisierului si o coloana calculata pe baza formulei RAND('GAMMA', 500000) – se alege
functia RAND cu distributia Gamma. Coloana se numeste Venit_rand si are formatul
BEST9.2.
3. Se face o jonctiune cu tabela ROMANIA, adaugandu-se campurile X, Y.
4. Se realizeaza o harta 3D pentru evidentierea veniturilor pe judete:
 Graph->MapChart->3D Prism Map
 Tab-ul Data: Pentru Map geometry se alege _MAP_GEOMETRY_ si Column to
chart se alege Venit_random.
 Tab-ul Maps: bifăm Select response levels, iar la Map response levels bifăm Use
one color or pattern per value
 Tab-ul Legend: Se bifeaza Show Legend si se scrie venitul
 Tab-ul Titles: se debifeaza Use default text si se da un nou titlu hartii
5. Harta rezultata este urmatoarea:

4. Personalizarea rezultatelor proiectelor

Particularizarea formatului si stilului unui rezultat


Problema 1: Compania ABC doreşte să obţină o listă cu produsele oferite şi profitul adus de acestea.
Lista trebuie să aibă următoarele caracteristici:
 Produsele din aceeaşi categorie trebuie să fie grupate împreună
 Numele categoriei trebuie să apară doar o dată, la începutul unui grup
 Titlul raportului trebuie să fie Profit by category
 Raportul obţinut să fie salvat şi în format PDF
 Stilul raportului SAS să fie Ocean
Paşi de urmat:
1. Se creeaza o interogare care realizeaza o jonctiune intre tabelele products, profit şi tabela
rezultată în urma importului foii de calcul Suppliers. Se adaugă la interogare câmpurile din Figura
1.

2. Apăsaţi butonul Computed Columns, New.


3. Selectaţi opţiunea care vă permite să calculaţi o coloană sumarizată
4. Selectaţi coloana Profit
5. Stabiliţi pentru noua coloană denumirea Profit total, formatul de afişare DOLLARw.d cu lăţimea
8 şi 2 zecimale.
6. Ca rezultat al interogării, creaţi o tabelă SAS, numită Categorii_profit
7. Pornind de la tabela nou creată, se deschide prelucrarea Describe  List Data…
8. Pentru fiecare funizor se vor afişa variabilele: Country, Company Name, Product Name, Profit.
9. Atribuiţi variabile rolurilor prelucrării în funcţie de cerinţele din enunţul problemei: în List
varibles adăugăm Country, Company Name, Product Name, Profit, iar la Group analysis by
adăugăm CategoryName
10. În tabul Properties, selectaţi opţiunea Edit
11. Alegeţi tabul Results, opţiunea Customize result formats, styles and behavior.
12. Pentru opţiunea SAS report, alegeţi stilul Ocean din lista de opţiuni
13. Bifaţi şi opţiunea PDF
14. Rulaţi raportul
Opţional. Editaţi stilul Ocean, pentru personalizare conform preferinţelor
1. Tools>Style Manager
2. Creaţi o copie a stilului - Add a copy, cu numele Ocean2
3. Editaţi stilul nou creat, modificând dimensiunea si culoarea fontului folosit în header
4. Tabul Images – adaugati o imagine de fundal.
Pentru aplicarea noului stil, asupra raportului anterior
1. Selectati raportul (în Process Flow) click dreapta Properties Style: Ocean 2
2. Process flow  List Data Modify List Data  Run

Problema 2. Creaţi un grafic cu bare verticale care să reprezinte profitul total pentru fiecare categorie
de produs.
1. Selectaţi tabela creată la Problema 1, pentru ca aceasta să devină sursa de date activă în proiect.
2. Selectaţi Graph Bar Chart.
3. În tab-ul Bar Chart selectaţi tipul Vertical Colored Bar.
4. În tab-ul Data asignaţi variabile la rolurile prelucrării, astfel: CategoryName va reprezenta o coloană
a graficului (Column to chart), iar valorile sale vor defini coloanele graficului. Profit va fi asignată
rolului Sum of, iar valorile sale vor determina lungimea coloanelor graficului. Pentru a afişa valoarea
variabilei Profit fără zecimale, faceţi click dreapta pe aceasta, selectaţi Properties, apăsaţi Change şi
modificaţi formatul de afişare DOLLARw.d, astfel încât să aibă lăţimea 8 şi 0 zecimale.
5. În tab-ul Titles debifaţi opţiunea Use default text şi redenumiţi graficul Profit by Category.
6. În tab-ul Appearance, selectaţi Advanced şi bifaţi opţiunea Specify one statistical value to show for
bars, iar din lista de valori care se activează alegeţi Sum.
7. Apăsaţi Run.

Rapoarte compuse
Problema 3: Realizaţi un raport care să cuprinda datele obţinute la Problema 1, împreună cu raportul de
la Problema 2. Intitulaţi acest nou document Raport final. Acesta să aibă titlul Profit pe categorii, să
conţina datele în partea stângă, graficul în dreapta, iar în zona de subsol mesajul „Date confidenţiale”

1. File-> New-> Report


2. Selectati raportul creat la problema 1 şi aduce-ţi-l prin Drag and Drop pe
randul 2, coloana 1 din fereastra Report layout
3. Selectaţi graficul creat la problema 2 şi aduce-ţi-l prin Drag and Drop pe
randul 2, coloana 2 din fereastra Report layout
4. Selectaţi opţiunea Insert text – pentru a introduce titlul raportului.
Pozitionati şi redimensionaţi titlul astfel încât să ocupe primele 2 celule de pe primul rând în
fereastra Report layout
5. Ok
6. Selectaţi opţiunea Header&Footer -> tabul footer-> introduceí mesajul
corespunzător.
7. Selectaţi opţiunea Properties –Label – introduceti numele documentului.