Documente Academic
Documente Profesional
Documente Cultură
Studenți:
Iacob Mihaela
Sursa: Eurostat
Descrierea indicatorilor
Pentru detectarea outlierilor construim intervale de încredere pentru fiecare indicator : [xmediu -
3 ; xmediu + 3]
În urma calculelor au fost identificați și excluși din analiză 11 outlieri : IE05, EL42, EL62, ES30,
ES51, ES61, ES63, FR10, FRY3, ITC4, LU00.
Statistici descriptive
Valoarea maxima a PIB-ului pe cap de locuitor este de 75700 euro/loc, iar cea minima este 6000,
intr-o regiune din Bulgaria. Media numarului de locuitori este de 1378652. In ceea ce priveste
natalitatea, maximul nasterilor vii este de 74782, trei sferturi din regiuni inregistreaza o valoare
sub 19756. Maximul mediei varstelor este 51 de ani. Media mortalitatii infantile este de 50.59,
media ratei reale de crestere a VAB-ului este negativa, maximul formarii brute de capital este
69745, media numarului de ore muncite este 1046027, media celor care parasesc timpuriu
educatia este 9, egala cu media ratei de participare de educatie. Media populatiei active este de
668, minimul fiind de 39.
Histrograme
Corelatie puternica (peste 0.95) intre X2 si X8, X2 si X11 si X8 si X11. Vom elimina X11 din
analiza, pentru ca este foarte bine corelata cu X2 si X8 (0.98).
Corelatie negativa intre X3 si X4; atunci cand natalitatea creste, media varstelor scade si invers.
In continuare vom standardiza datele pentru a le pregati pentru analiza. Standardizam datele
pentru ca:
2. putem avea ordine de marime diferite (de ex putem avea varianta exprimata in milioane si in
lei)
In urma standardizarii:
1. Criteriul pantei: se realizeaza o taietura in grafic dupa o dreapta paralela cu Oy, astfel
incat la dreapta taieturii sa ramana o portiune in grafic cu panta aproape 0. K este primul
intreg de la stanga taieturii.
Pe axa Oy sunt reprezentate valorile proprii , iar pe axa Ox numarul componentelor
principale.
Se realizeaza taietura intre 3 si 4; K=3
2. Criteriul Kaiser: se pastreaza in analiza doar componentele principale care au varianta >
1; K=3
3. Criteriul procentului de acoperire: K=3 pentru ca Pk aprox 70%-80%
Pentru individuals, coloana dist se refera la distanta fata de centroidul norului de puncte, coloana
dim reprezinta coordonatele pe fiecare dimensiune/scoruri principale, coloana ctr este contributia
la construirea axelor si cos^2 este cantitatea reprezentata pe fiecare axa.
Pentru variables: pe coloana dim sunt coloanele matricii factor (cor(Xi,Zj)), ctr reprezinta
contributia la construirea componentelor, cos^2 este calitatea reprezentarii.
Matricea factor
Scoruri principale
Cercul corelatiilor
Graficul furnizează informații despre primele doua componente principale care preiau
aproximativ 41.9% și respectiv 23.2% din informația totala conținută de variabilele originale. Cu
cat unghiul dintre vectori este mai mic cu atat coeficientul de corelatie este mai mare. Exista
corelatie puternica intre X10 si X6; corelatie slaba intre X2 si X8. Dimensiunea 1 puternic
corelata cu X3, X8, X2. Dimensiunea 2 puternic corelata cu X10, X6.
Reprezentarea regiunilor in noul spatiu
Regiunile din Romania au valori foarte mici (negative) pentru componenta 2 (influenta educatiei
asupra PIB). Concluzie pentru context european: regiunile din Romania se aseamana cu Italia,
Grecia, Spania din punct de vedere al Z1 si Z2.
ANALIZA CLUSTER
Pentru aceasta analiză vom utiliza scorurile principale stabilite la analiza componentelor
principale.
Culorile deschise reprezinta regiuni omogene. Prin această diagrama sunt reprezentate distanțele
euclidiene între fiecare doua regiuni prezente în analiză . Astfel , culoarea galbena este atribuită
distanțelor mici , indicând un nivel ridicat de similaritate între cele două regiuni ,iar culoarea
negru este atribuită celor mai mari distanțe regăsite și în același timp semnifică un grad scăzut de
asemanare între cele două regiuni. Valorile exacte ale distanțelor euclidiene se regăsesc în
matricea distanțelor. Distante mici intre Belgia si Bulgaria. Regiunile Franta din se afla pe linia
neagra. Regiunile din Romania par a fi omogene.
Alegerea numarului de clustere
1. Metoda WARD
146 pasi de clusterizare, pentru ca avem 147 observatii. Valori negative= observatii, forme.
Valori pozitive= clasele deja formate. Observatiile 138 si 141 s-au grupat intr-o clasa la
distanta de 0.46. Vom grupa obervatiile intre ele in functie de distanta minima dintre ele.
Variabilitatea intraclase sa fie minima si interclase sa fie maxima.
Dendograma
Criteriul pentru alegerea numarului de clase: se realizeaza o taietura in grafic astfel incat
distanta dintre 2 pasi consecutivi de clusterizare sa fie cea mai mare. Numarul de intersectii
ale taieturii cu dendrograma = nr de clase. Conform acestui criteriu, k=3. Ultimul pas de
agregare este pe linia orizontala cea mai de sus (peste 25).
2. Metoda Elbow
3. Functia NbClust
Graficul ne
sugereaza ca vom
avea intre 2 si 10
clustere.
Functia ne indica faptul ca numarul cautat de clustere este 3.
Graficul silhouette
Primul cluster are 14 observatii, al doilea 112 componente si al treilea, 21.
𝑏(𝑖 ) − 𝑎(𝑖)
𝑠𝑖𝑙_𝑤𝑖𝑑𝑡ℎ =
max(𝑏(𝑖 ), 𝑎(𝑖 ))
a(i)= distanta medie dintre observatia i si toate celalalte observatii din clusterul de care apartine
observatia i
Interpretare sil_width:
De exemplu, observatia 2 are sil_width negativ, deci este incadrata gresit. Observatia 1 este
incadrata intre clasa 1 si 2.
Clasa 1 are cele mai mari valori in ceea ce priveste PIB-ul si populatia, deci va fi bine
dezvoltata din punct de vedere al nivelului de trai.
Clasa 2 are valori negative pentru primele componente deci va fi slab dezvoltata din punct de
vedere al nivelului de trai.
Clasa 3 are in medie valori mici, deci va fi slab dezvoltata din punct de vedere al nivelului de
trai si al populatiei.
Componenta clusterelor
Pas 3: se aloca formele la clase pe baza celor mai mici distante si se recalcalculeaza centroizii
claselor respective
Pas 4: se calculeaza din nou distanta si se reiau pasii pana cand diferentele dintre centroizii
de la un pas si de la alt pas este aproape de 0
Majoritatea regiunilor din Romania apartin primei clase, cea cu un nivel scazut de trai. Toate
regiunile din Olanda apartin celui de al treilea cluster, deci sunt bine dezvoltate.
Mai putine valori negative decat metoda WARD, deci este o solutie mai buna.
Pentru a vedea daca observațiile au fost descompuse eficient în clustere vom calcula
variabilitatea totala, variabilitatea intraclasa și variabilitatea interclasa.
SPAW =suma pătratelor abaterilor intraclasă (within) –trebuie să fie cât maimică;
SPAB= suma pătratelor abaterilor interclasă ( between) trebuie să fie cât mai mare;
R = SPAB/SPAW ; Cu cât R este mai mare, cu atât variabila are putere de discriminare mai
mare.
Putem observa ca variabilitatea intraclasa totala este egala cu 862.63, iar cea interclasa este egala
cu 607.36. R=0.70
INFOGRAFIC
Anexe
Cod R:
#X3= Natalitate
#X6= Rata reală de creștere a valorii adăugate brute (modificare procentuală față de perioada
anterioară)
#Obiectiv: analiza regiunilor din europa din pct de vedere demografic, economic, al nivelului de
trai si al educatiei
#importam datele
summary(date)
#Valoarea maxima a PIB-ului pe cap de locuitor este de 75700 euro/loc, iar cea minima este
6000, intr-o regiune din Bulgaria. Media numarului de locuitori este de 1378652. In ceea ce
priveste natalitatea, maximul nasterilor vii este de 74782, trei sferturi din regiuni inregistreaza o
valoare sub 19756. Maximul mediei varstelor este 51 de ani. Media mortalitatii infantile este de
50.59, media ratei reale de crestere a VAB-ului este negativa, maximul formarii brute de capital
este 69745, media numarului de ore muncite este 1046027, media celor care parasesc timpuriu
educatia este 9, egala cu media ratei de participare de educatie. Media populatiei active este de
668, minimul fiind de 39.
#Histograme
#asimetrie la dreapta
#asimetrie la dreapta
#asimetrie la dreapta
#Boxplot-uri
#outliers
boxplot(date$X6, main="Boxplot pentru rata reala de crestere a VAB" , col = "blue", horizontal
= TRUE)
#outliers
#matrice de corelatie
cor(date)
#vom elimina X11 din analiza, pentru ca este foarte bine corelata cu X2 si X8 (0.98)
#corelatie negativa intre x3 si x4; atunci cand natalitatea creste, media varstelor scade si invers
library(corrplot)
#Standardizare
View(date_std)
apply(date_std,2,sd)
apply(date_std,2,mean)
round(cor(date_std),4)
round(cov(date_std),4)
acp1
R<-cor(date_std)
desc<-eigen(R)
valori<-desc$values
valori
vectori<-desc$vectors
vectori
acp1$sdev^2
#sdev^2(variantele comp principale sunt val prop ale matricii de corelatie)
library(factoextra)
library(FactoMineR)
fviz_eig(acp1) #screeplot
#Pe axa Oy sunt reprezentate valorile proprii , iar pe axa Ox numarul componentelor principale
summary(acp2)
#1.Criteriul pantei: se realizeaza o taietura in grafic dupa o dreapta paralela cu Oy, ai la dreapta
taieturii sa ramana o portiune in grafic cu panta aproape 0. k este primul intreg de la stanga
taieturii
#2.Criteriul Kaiser: se pastreaza in analiza doar componentele principale care au varianta > 1
#Concluzia criteriilor: pastram in analiza primele 3 comp princ, care sintetizeaza impr 77.26%
din informatia din variabilele originale,
#matricea factor este matricea de corelatie dintre comp princ si variabilele initiale
#pt individuals, col dist se ref la distanta fata de centroidul norului de pct
#pt variables:
#cos^2=dim^2
#ctr= cos^2/lambda
factor <-round(acp2$var$cor, 2)
factor
#z3= media varstelor celor care parasesc timpuriu educatia (x4 si x10)
acp1$scores[,1:3]
scores<-acp1$scores
scores
#scoruri principale
#cercul corelatiilor
#Graficul furnizează informații despre primele doua componente principale care preiau
aproximativ 41.9%% și respectiv 23.2%% din informația totala conținută de variabilele originale
.
#cu cat unghiul dintre vectori este mai mic cu atat coeficientul de corelatie este mai mare
#Concluzie pt context european: regiunile din Romania se aseamana cu Italia, Grecia, Spania
din pct de ved al z1 si z2
###############ANALIZA CLUSTER##############################
#pentru analiza cluster vom folosi scorurile principale din acp
d = dist(as.matrix(scores), method="euclidian")
#Matricea distanțelor expune rezultatele obținute în urma calculului distanței euclidiene dintre
oricare doua regiuni prezente în analiză .
library(ggplot2)
library(reshape2)
m <- melt(as.matrix(d))
geom_tile() +
scale_fill_gradient(low="yellow", high="black")
#Prin această diagrama sunt reprezentate distanțele euclidiene între fiecare doua regiuni prezente
în analiză . Astfel , culoarea galbena este atribuită distanțelor mici , indicând un nivel ridicat de
similaritate între cele două regiuni ,iar culoarea negru este atribuită celor mai mari distanțe
regăsite și
#în același timp semnifică un grad scăzut de asemanare între cele două regiuni
#alegerea nr de clustere
#metoda ward
cbind(clust_std$merge,clust_std$height)
#vom grupa obs intre ele in fct de distanta minima dintre ele
plot(clust_std,labels=rownames(scores))
#criteriul pt alegerea nr de clase: se realiz o taietura in grafic ai dist dintre 2 pasi consec de
clusterizare sa fie cea mai mare
#ultimu pas de agregare este pe linia orizontala cea mai de sus (peste 25)
#metoda Elbow
library(factoextra)
library(ggpubr)
#Se cauta un pct in acest grafic (apare ca o inflexiune) de la care varianta suplimentara este
redusa
#functia NbClust
library(NbClust)
#Functia ne indica faptul ca numarul cautat de clustere este 3. Graficul ne sugereaza ca vom avea
intre 2 si 10 clustere.
library(cluster)
si3_std
#sil_width=(b(i)-a(i))/(max(b(i)),a(i))
#a(i)=dist medie dintre obs i si toate celalalte obs din clustereul de care apartine obs i
#de ex obs 2 are sil width negativ, deci este incadrata gresit
library(MASS)
table(solutie2)
#Clasa 1 are cele mai mari valori in ceea ce priveste PIB-ul si populatia, deci va fi bine
dezvoltata din punct de vedere al nivelului de trai.
#Clasa 2 are valori negative pentru primele componente deci va fi slab dezvoltata din punct de
vedere al nivelului de trai.
#Clasa 3 are in medie valori mici, deci va fi slab dezvoltata din punct de vedere al nivelului de
trai si al populatiei.
#componenta claselor
plot(clust_std,labels=rownames(scores))
rect.hclust(clust_std,k=3, border=2:5)
library(factoextra)
fviz_cluster(list(data=scores,cluster=solutie2))
k_std=kmeans(scores,3)
k_std
#pas 3: se aloca formele la clase pe baza celor mai mici dist si se recalc centroizii claselor resp
#pas 4: calc din nou dist si se reiau pasii pana cand dif dintre centroizii de la un pas si de la alt
pas este aproape de 0
#Clasa 1 si 3 au cele mai multe valori negative deci vor reprezenta un nivel scazut de trai.
#Clasa 2 are cele mai multe valori pozitive, deci va avea un nivel crescut de trai.
#apartenenta la clase
#Majoritatea regiunilor din Romania apartin primei clase, cea cu un nivel scazut de trai.
#Toate regiunile din Olanda apartin celui de al treilea cluster, deci sunt bine dezvoltate.
s <- silhouette(clase,d)
plot(s)
#mai putine valori negative decat metoda ward, deci este o solutie mai buna
#Pentru a vedea daca observațiile au fost descompuse eficient în clustere vom calcula
variabilitatea totala, variabilitatea intraclasa și variabilitatea interclasa
#SPAW =suma pătratelor abaterilor intraclasă (within) –trebuie să fie cât maimică;
#SPAB= suma pătratelor abaterilor interclasă ( between) trebuie să fie cât mai mare;
#R = SPAB/SPAW ; Cu cât R este mai mare, cu atât variabila are putere de discriminare mai
mare.
SPAT<-k_std$totss
SPAW<-k_std$withinss
SPAWT=k_std$tot.withinss
SPAB<-k_std$betweenss
R<-SPAB/SPAWT
variab
#putem observa ca variabilitatea intraclasa totala este egala cu 862.63, iar cea interclasa este
egala cu 607.36. R=0.70
Date initiale