Documente Academic
Documente Profesional
Documente Cultură
Fie o baza de date cu informatii privind caracteristicile mai multor specii de flori. Sa se realizeze o
grupare a acestora in clustere omogene. Baaza de date folosita este: specii_flori.xls.
Proceduri SAS
1
Materialul a fost pregatit cu ajutorul studentelor : Ivan Petruta si Stan Alexandru, An 3 Promortia
2019-2020
→ rularea bazei de date (Run)
Rezultatul obtinut arata ca baza de date este formata din 6 variabile si 150 de observatii .
I. Metoda Ward
Se va folosi metoda de clasificare ierarhica a lui Ward. Acaesta metoda ma va ajuta sa identific si
numarul de clustere in care este cel mai bine a se imparti observatiile.
→
DATA – WORK.IMPORT (baza de date pe care dorim sa aplicam metoda (specii_flori.xls) pe care am
rulat-o in prealabil).
ADDITIONAL ROLES –Identify observations in clusters – introducem variabila dupa care vrem sa
grupam.
→
METHODS-Standardization-Ratio Variables – Standardization Method- avem 2 optiuni:
1. Range (atunci cand nu cunoastem observatiile din baza de date sau stim ca exista OUTLIER)
2. Standard deviation (atunci cand cunoastem datele si stim ca nu exista OUTLIER si repartitia
este aproximativ normala)
(Explicatie: Metoda WARD introduce ca distanţă între 2 clase pierderea de inerţie interclase ce sar obţine
prin contopirea celor două clase.
Metoda Ward – Minimizează variabilitatea din interiorul clusterului.
→ rulam (Run)
RESULTS: CLUSTER OBSERVATIONS
INTERPRETAREA REZULTATELOR:
Pentru a avea omogenitate in cadrul grupelor R-Square trebuie sa aiba o valoarea mai mare de 0.5. In
cazul nostru se observa ca sunt necesare doua grupe (number of cluster = 2) pentru a avea diferenta
semnificativa intre grupe (R-Square =0.705).
Semipartial R-Square imi arata diferenta de pierdere de inertie de la un nivel la altul de agregare (de la k
la k-1 grupe). Unde se observa o diferenta mai mare inseamna ca acolo ar fi bine sa ma opresc cu
agregarea clusterelor.
OBSERVATIE:
In sectiunea Options la PLOTS este bifat Default plots si automat este bifata Dendogram adica arborele
de clasificare, insa daca baza de date este mult prea mare arborele nu este afisat (daca sunt mai mult de
100 de observatii).
II. Metoda K-Means Clustering
Determina care dintre variabilele incluse in analiza are cea mai mare influenta asupra grupelor si imparte
populatia intr-un numar prestabilit de clustere .
OBSERVATIE:
→ →
DATA – WORK.IMPORT (baza de date pe care dorim sa aplicam metoda (specii_flori.xls) pe care am
rulat-o in prealabil).
ROLES – Variables to use in clustering- adaugam variabilele folosite in analiza .
Clustering - Maximum number of clusters ( numarul de grupe (clustere ) in care se impart variabilele,
in cazul nostru atunci cand am aplicat Cluster Observations am observant ca exista omogenitate in cazul
grupelor de la 2 clustere in sus deci numarul maxim de clustere este 2 ).
Maximum number of iterations (numarul maxim de iteratii, in general sunt suficiente 10 iteratii ).
OUTPUT DATA SETS – Create cluster assignment data set (creem un nou set de data numit
work.Fastclus_scores)
→ rulam (Run)
INTERPRETAREA REZULTATELOR
Statistics for Variables- arata care variabile influenteaza cel mai mult gruparea in clustere.
Din tabelul Statistics for Variables reiese faptul ca variabila care influenteaza cel mai mult gruparea pe
clustere este PETAL LENGTH, R-Square> 0.7, urmata de PETAL WIDTH, unde de asemenea R-
Square>0.7. R-Square măsoară cât de diferite sunt clusterele formate unele de altele în funcție de
variabila respectivă.
SEPAL WIDTH nu intra in analiza deoarece R-Square nu este mai mare de 0.5 .
Pentru a caracteriza cele doua clustere ne uitam in tabelul Cluster Means si analizam variabilele care au
R-Square >0.5 .
In clusterul 1 observam ca se regasesc speciile de flori care au valori mici pentru fiecare dintre variabilele
care intra in analiza (exceptand latimea sepalei care este mai mare decat in clusterul 2), iar in clusterul 2
sunt speciile care au valorile mari pentru fiecare dintre variabile (cu exceptia latimei sepalei care este mai
mica decat in clusterul 1).
Astfel putem afirma ca putem imparti speciile de flori in 2 grupe , flori mici cu petale si sepale scurte si
petale usoare si flori mari cu petale si sepale lungi si petale grele.
Seminar 8 – noiembrie 2022
Analiza de corespondente multiple – ACM
Prof. coordonator: Prof.univ.dr. Cristina Boboc
DATELE
Se lucrează pe o bază de date preluată din European Social Survey (ESS data,
https://www.europeansocialsurvey.org/).
Pentru această analiză au fost selectate urmatoarele variabile din baza de date:
Variabile de opinie:
➔ edulvla : Care este cel mai inalt nivel de educatie atins de dvs. ?
➔ maritala : Statutul marital legal
➔ regionro : Regiunea
➔ gndr : sex
În fiecare tabel de frecvențe trebuie să verificăm dacă există categorii cu frecvente relative de
sub 2%. În cazul în care vom avea astfel de categori va trebui să transformăm variabilele
respective, si prin gruparea categoriilor să obținem frecvente relative de peste 2%.
În cazul acestei variabile observăm că nici una din categorii nu are o frecvență de sub
2%, deci poate fi inclusă în analiză fără a o transforma.
2. stfgov : Cat de satisfacut sunteti de actualul guvern al tarii ?
În cazul acestei variabile observăm că nici una din categorii nu are o frecvență de sub 2%, deci
poate fi inclusă în analiză fără a o transforma.
4. mainact : Principala activitate in ultimele 7 zile
În cazul aceste variabile observăm că există două categorii au frecvente mici de sub 2%:
- ”Șomer, nu caut activ loc de muncă” ce poate fi grupată cu categoria ”Șomer, în căutare
activă a unui loc de muncă”, rezultănd o categorie: ”Șomer” cu frecvență de peste 2%.
- ”Serviciu militar sau în sprijilul comunității” care poate fi inclusă în categoria ”Altele”
5. edulvla : Care este cel mai inalt nivel de educatie atins de dvs. ?
În cazul acestei variabile observăm că nici una din categorii nu are o frecvență de sub
2%, deci poate fi inclusă în analiză fără a o transforma.
6. maritala : Statutul marital legal
În cazul aceste variabile observăm că există trei categorii au frecvente mici de sub 2%. Acestea
pot fi eliminate din analiza.
7. regionro : Regiunea
În cazul acestei variabile observăm că nici una din categorii nu are o frecvență de sub
2%, deci poate fi inclusă în analiză fără a o transforma.
8. gndr : sex
În cazul acestei variabile observăm că nici una din categorii nu are o frecvență de sub
2%, deci poate fi inclusă în analiză fără a o transforma.
TRANSFORMAREA VARIABILELOR
Pentru aceasta variabilă transformată toate categoriile au o frecvență relativă de peste 2%.
2. Crearea unei noi baze de date doar cu variabilele de interes si din care eliminam
categoriile cu o frecventa relativa de sub 2%.
In acest scop vom crea un mic program in SAS astfel:
Pentru aceasta nouă baza de date vom verifica daca toate variabilele sunt bine create reluând
taskul Characterize Data:
Se observă noua bază de date conține 2053 observații si pentru nici o categorie a nici unei
variabile, nu mai obținem frecvențe relative de sub 2%.
ANALIZA DE CORESPONDENȚE MULTIPLE
Deoarece variabila gen are doar două categorii, toate celelalte variabile înregistrând peste 4 variante de
răspuns, aceasta va fi eliminată din analiză, nefiind recomandată introducerea in analiză a unor variabile
cu diferențe foarte mari între numărul de variante de răspuns ale acestora.
Apoi rulăm analiza si obtinem rezultatele:
1. Tabelul BURT
Acest tabel poate ajuta la rafinarea concluziilor analizei. De exemplu, pot să analizez una din
liniile unui tabel de contingență astfel:
In acest tabel sunt calculate totalurile marginale pe coloane și poate ajuta la rafinarea concluziilor
analizei.
Se observă că primele două componente principale explică 71% din inerția totală a norului de
puncte. Dacă analizăm și schimbarea pantei de descreștere a acesteia, observăm că aceasta se
schimbă pentru trei componente. Deci, pot fi păstrate trei componente principale pentru o mai
bună explicare a inerției norului de puncte.
4. Contribuția parțială a categoriilor la primele trei dimensiuni și calitatea
reprezentării pe aceste componente
Deci interpretarea categoriilor variabilelor analizate și asocierii dintre acestea se va face doar
pentru cele reprezentate bine în proiecție pe primele trei dimensiuni, si anume:
In Cadranul 1 se observă că pensionarii sunt extrem de nesatisfăcuți cu viața lor per total.
În cadranul 2 se observă că persoanele aflate în educație socializează în fiecare zi. De asemenea
cei ce socializează de câteva ori pe săptămână sunt extrem de satisfăcuți cu viața lor per total.
În cadranul 3 se observă că cei ce au studii universitare desfășoară și o muncă plătită.
În cadranul 4 persoanele căsătorite socializează o data pe lună.
Seminar 9 – noiembrie 2022
Analiza discriminantă1
Prof. coordonator: Prof.univ.dr. Cristina Boboc
Fie o baza de date cu informatii privind stilul de viață Date_seminar_8.sav contine informații privind 62
de variabile pentru 271 de observatii.
1. TRANSFORMAREA VARIBILELOR
În cazul variabilei ”Numărul de țigări fumate” - cigsgp3 se observă că cei ce nu fumează nu au completat
această variabilă. Pentru a putea folisi aceasta variabilă în analiză voi recodifica această variabilă astfel
incat toate valorile missing să fie înlocuite cu zero, deci sa fie specificat faptul că respondentul nu a fumat
nici o tigară. Pentru recodificare se va folosi Task-ul Recode Values.
1
Materialul a fost pregatit cu ajutorul studentelor : Ivan Petruta si Stan Alexandru, An 3 Promortia
2019-2020
→
DATA - WORK.IMPORT (baza de date pentru care dorim sa aplicam care metoda)
Variable to recode - alegem varibila pentru care vrem sa modificam valuarea
Recoded variable name - alegem numele noii variabile
Creem un nou set de date pe care le denumim work.newtable
In sectiunea VALUES punem la Old value 1 si la New value 0 mai apoi modificam in
CODE(edit).
Si rulam noul program scris.
Vom observa crearea unei noi baze de date care contine toate cele 62 de variabile plus variabila
nou creata.
2. ANALIZA DISCRIMINANTĂ
Prin urmare vom aplica metoda analizei discriminante pe noul set de date creat unde o sa
avem si variabila nou tigari_pe zi.
Dupa ce verificam tot setul de date si obtinem un rezultat optim pentru analiza discriminanta
urmatorul pas este:
DATA – WORK.NEWTABLE (baza de date nou creata)
*Group variable – refreshd (variabila de interes )
*Quantitative variables – cele 9 variabile introduse in analiza
METHODS
Classification criterion method – Parametric
Discriminant function – Linear
Canonical analysis – Plot first two canonical variates
VALIDATION
Perform cross validation – Display misclassified observations
STATISTICS
Posterior probability error-rate estimates
Simple descriptive statistics
Classification results
Selection method
– alegem metoda Stepwise selection
3. INTERPRETAREA REZULTATELOR
Din cele 9 variabile incluse în analiză, semnificative pentru împărțirea în cele două grupe doar 4
au o valoarea p-value sub 0,05. Deci, doar nivelul stresului din ultima luna, statutul marital,
numărul de ore de somn pe noapte din timpul săptămânii și numărul de ore de somn pe noapte din
weekend sunt semnificative pentru clasificare.
Daca nu as fi aplicat analiza discriminantă, procentul celor ce nu se simt bine în timpul săptămânii
este de 61.8%, deci daca i-as considera pe toti ca nu sunt bine, atunci as gasi acest procent de
61,8% corect. În cazul în care folosesc Analiza discriminantă voi identifica corect 66.41%, în una
din cele două categorii, reușind să identific corect si 42% dintre cei ce se simt bine. Totuși modelul
nu este performant.
Din analiza proiectiei observatiilor pe planul determinat de primele două axe discriminante se
observă că cele două grupe de indivizi nu sunt foarte bine separate, ceea ce mă conduce la aceeași
idee că modelul nu este performant. Pentru obținerea unui model mai bun, ar trebui să alegem noi
variabile în analiză care să ne aducă informații suplimentare.
Seminar 7 – noiembrie 2022
Analiza în Componente Principale și Analiza de Tip Cluster1
Prof. coordonator: Prof.univ.dr. Cristina Boboc
DATELE
Se lucrează pe o bază de date referitoare la caracteristicile mai multor marci de tutoturisme.
Această bază de date contine 428 de observații și 15 variabile. Cele 15 variabile sunt referitoare la
modelul autoturismului și caracteristicile tehnice ale acestora. Deoarece datele au unități de măsură
diferite, ale sunt standardizate inainte de a fi incluse in analiză.
1
Materialul a fost pregatit cu ajutorul studentelor : Bundă Andreea-Nicoleta, Minoiu Maria-Magdalena,
An 3 Promortia 2019-2020
Dorim sa vizualizam relatiile intre variabilele precizate mai sus si eventuala existenta a unor grupuri
de variabile, drept pentru care vom aplica analiza in componente principale, construind variabile
artificiale.
STANDARDIZAREA DATELOR
Primul pas este standardizarea datelor, deoarece nu avem aceeași scală de măsurare (unitate de
măsură):
În SAS se găsește la Task and Utilities -> Data -> Standardize Data
La DATA vom adăuga toate variabilele, apoi la OPTIONS vom alege ca metodă de standardizare „Range’’.
Task and Utilities -> Multivariate Analysis -> Principal Component Analysis
La OPTIONS vom selecta Default and additional plots și vom bifa toate căsuțele de mai jos, apoi la
Options (din josul imaginii) vom pune Model la ID variablesfor score plots
Tabelul de corelații
Pentru a decide dacă prin Analiza în Componente Principale vom obtine rezultate bune, va fi analizat în
primul rand tabelul corelațiilor.
În ce caz este indicat să folosim ACP? Vom obține niște componente semnificative? (Correlation Matrix)
Dacă există coeficienți mari sau medii (corelații semnificative), se recomandă a fi folosită APC pentru
reducerea dimensiunii spațiului date si pentru vizualizarea datelor.
Din analiza tabelului de corelatie intre variabilele analizate, observam ca exista variabile puternic
corelate pozitiv, de exemplu variabilele INVOICE și MSRP (0,99) , dar si variabile puternic corelate
negativ, de exemplu MPG_City cu Engine Size (-0,7179) sau variabile slab corelate sau chiar necorelate
intre ele, ca de exemplu MSRP cu Wheelbase (0,1517).
In concluzie putem afirma ca ACP este utila in interpretarea legaturilor dintre variabilele analizate.
Pentru a decide câte componente principale este indicat a fi păstrate se păstrează ne vom uita în
matricea cu valori proprii ( Eigenvalues of the Correlation Matrix)
Valorile proprii
De asemenea, ne vom uita cât la sută din variabilitate este explicată de componentele selectate.
(Proportion). Proporția se calculează lambda 1 (prima valoare proprie) împărțită la numărul de valorilor
proprii. (În cazul nostru, împărțim 8,35 la 10), deci 83,5% din variabilitate este păstrată prin proiecție pe
prima axă principală.
83,5%: 80% deci poate fi păstrată si doar o componentă principală. (Conform teoriei „Dacă primele k
componente principale preiau 80% sau mai mult din varianţa datelor iniţiale, atunci scopul reducerii
dimensionalităţii va fi atins.’’).
Prin proiecție pe planul determinat de primele două axe principale este explicată 93,57% din
variabilitatea totală.
O altă metodă prin care putem afla în câte componente vom împărți este să ne uităm la Scree Plot.
Conform Scree plot-ului, vom păstra primele 2
componente deoarece panta se schimbă la valoarea 2.
Concluzie: În continuare bentru o mai bună reprezentare a datelor vom păstra primele 2 componente
principale.
Pozitive:
Weight =0,334
Horsepower =0,336
Wheelbase = 0,327
Length = 0,332
• Prima componentă este determintă de variabilele care țin de caracteristicile mașinii (cilindri,
mărimea motorului, greutatea, caii putere) în sens pozitiv.
Pozitive:
MGP_City = 0,611
A doua componentă este determinată în sens pozitiv de variabilele
MGP_Highway = 0,532 referitoare la consum.
Negativ:
A doua componentă este determinată în sens negativ de variabilele
MSRP = -0,338
referitoare la preț.
Invoice = -0,342
• A doua componentă este determinată de variabilele referitoare la preț (MSRP și Invoice) în sens
negativ și de variabilele care țin de consumul mașinii (MGP_City si MGP_Highway) în sens negativ.
Reprezentare grafică
Pentru a vedea cum sunt reprezentate grafic cele 10 variabile și legăturile dintre acestea (identificarea
de grupuri de variabile) ne vom uita pe graficul Component Pattern.
Ce putem spune în privința corelației dintre variabile? Cine cu cine se corelează și cum este?
Vom schimba nivelul de predicție din 95% în 99% pentru a avea o mai mare claritate.
Ne întoarcem în Sas Studio și apasăm pe fereastra OPTIONS, schimbăm nivelul de predicție, apoi dăm
din nou RUN și ne uităm la noul grafic.
(Putem oberva mai jos că schimbând nivelul de predicție, s-a mărit si cercul elipsei => numărul de
outlieri s-a micșorat)
După cum se poate observa în graficele anterioare, valorile din afara elipsei (Insight 2dr, Prius 4dr, Civic
Hybrid 4dr) au valori mari ale MPG deci vor avea valori foarte mici ale consumului.
De asemenea, în direcția opusă se află 911 GT2 2dr, SL55 AMG 2dr care au valori foarte mici ale MPG
deci au consumul foarte ridicat dar au și valori ale variabilelor de performantă a masinii foarte mari. Deci
sunt mașini foarte puternice cu consum foarte mare de carburant.
REPREZENTAREA GRAFICA A REZULTATELOR OBTINUTE DIN ANALIZA ÎN
COMPONENTE PRINCIPALE SI ANALIZA CLUSTER
Dacă dorim să reprezentăm graphic proiecția indivizilor pe planurile principale marcând și clusterul din
care fiecare observație face parte), clusteri obtinuți prin analiza cluster (vezi seminarul 6 pentru
clusterizarea observatiilor), vor aplica incă odata ACP astfel.
Task and Utilities- > Multivariate Analysis -> Principal Component Analysis
DATA: La DATA vom pune WORK.FASTCLUS_SCORES (obținut la K-Means Clustering) și introducem toate
variabilele până la Length inclusiv.
Se va deschide o nouă fereastră unde vom tasta : id cluster; ( după Length; apăsam tasta ENTER și apoi
Și observăm la Component Scores 95% Prediction Ellipse că cei mai mulți outlieri sunt din grupa/
clusterul 3.
--