MASTER ABD, ANUL 2, SEMESTRUL 2 2020 CUPRINS Cuprins 2 Abstract 3 1 Introducere 4 [632144]
TEXT MINING
Student: [anonimizat]:
Prof. dr. ing. Florin R
ă
dulescu
MASTER ABD, ANUL 2, SEMESTRUL 2
2020
CUPRINS
Cuprins
2
Abstract
3
1
Introducere
4
2
Context
ș
i motiva
ț
ie
5
3
Prezentarea aplica
ț
iei
6
3.1
Alegerea setului de date
8
3.2
Procesul de implementare
9
3.3
Pa
ș
ii pentru imp lementare
10
3.4
Fluxul de lucru al aplica
ț
iei
14
3.5
Rezultate ob
ț
inute
15
3.6
Evaluarea rezultatelor
20
4
Limit
ă
ri
ș
i direc
ț
ii de explorare pentru viitor
21
5
Concluzii
22
6
Bibliografie
ș
i referin
ț
e
23
2
ABSTRACT
Prin
aplicarea
unor
metode
statistice
pentru
prelucrarea
ș
i
procesarea
datelor
pe
un
set
de
date
semistructurat
care
con
ț
ine
informa
ț
ii
despre
cazurile
de
poluare
din
jude
ț
ele
din
România,
îmi
propun
s
ă
ob
ț
in
în
aceast
ă
lucrare
un
set
de
grafice
care
prezint
ă
rezultate
semnificative
sub
forma
unor
statistici
interesante.
Astfel,
în
aceast
ă
lucrare
voi
prezenta
în
detaliu
o
aplica
ț
ie
care
poate
reprezenta
un
început
pentru
investigarea,
aprofundarea
ș
i
în
ț
elegerea fenomenului de poluare din România.
3
1
INTRODUCERE
Explorarea
datelor
de
tip
text
(“text
mining”)
sau
descoperirea
de
cuno
ș
tin
ț
e
este
acel
subproces
din
domeniul
exploat
ă
rii
datelor
(“data
mining”)
care
este
utilizat
pe
scar
ă
larg
ă
pentru
a
descoperi
modele
interesante
ș
i
informa
ț
ii
semnificative
dintr-o
cantitate
mare de seturi de date semi structurate sau nestructurate.
A
ș
adar,
text
minin g
ș
i
data
mining
sunt
dou
ă
domenii
similare,
exceptând
faptul
c
ă
în
domeniul
data
mining
se
lucreaz
ă
cu
date
structurate
în
timp
ce
în
domeniul
text
mining
se
lucreaz
ă
cu
date
semistructurate
ș
i
nestructurate.
Procesul
de
data
mining
este
responsabil
pentru
extragerea
datelor
poten
ț
iale
ș
i
necunoscute,
iar
procesul
de
text
mining
este
responsabil
în
mare
parte
pentru
extragerea
datelor
specificate
explicit
în
textul
dat.
Totu
ș
i,
ambele au în comun urm
ă
toarea caracteristic
ă
: extragerea de informa
ț
ii poten
ț
iale.
În
continuare,
voi
prezenta
unele
dintre
cele
mai
populare
tehnici
folosite
pentru
extragerea
cuno
ș
tin
ț
elor
utile
din
date
text
în
fig.
1
[1]
ș
i
diversele
utiliz
ă
ri
ale
instrumentelor de extragere a cuno
ș
tin
ț
elor utile din date text în fig. 2 [1]:
Fig. 1 Cele mai populare tehnici de
exploatare a datelor text
Fig. 2 Utiliz
ă
ri ale uneltelor de exploatare
a datelor text
În
consecin
ț
ă
,
cele
dou
ă
figuri
(fig.1
ș
i
fig
2)
sunt
reprez entative
pentru
în
ț
elegerea
procesului
de
text
mining
ș
i
totodat
ă
reprezint
ă
un
reper
pentru
alegerea
tehnicilor
de
procesare
ș
i utiliz
ă
ri pent ru o viitoare aplica
ț
ie.
4
2
CONTEXT
Ș
I MOTIVA
Ț
IE
A
ș
adar,
extragere a
cuno
ș
tin
ț
elor
din
datele
textuale
se
refer
ă
la
aplicarea
tehnicilor
de
prelucrare
ș
i
procesa re
a
limbajului
natural
ș
i
a
metodelor
analitice
asupra
datelor
text
pentru
a
ob
ț
ine
informa
ț
ii
relevante.
Datorit
ă
unei
cre
ș
teri
exponen
ț
iale
a
datelor
de
tip
text
în format digital, explorarea datelor de tip text prime
ș
te o aten
ț
ie deosebit
ă
în ultimii ani.
Totodat
ă
,
vizualizarea
datelor
joac
ă
un
rol
important
în
fluxurile
de
lucru
pentru
analiza
datelor.
Prin
urmare,
aceasta
permite
anali
ș
tilor
de
date
s
ă
descopere
eficient
tiparele
în
seturi
de
date
mari
prin
mijloace
grafice
ș
i
s
ă
reprezinte
aceste
descoperiri
într-un
mod
semnificativ
ș
i
eficient.
Vizualizarea
datelor
este
un
domeniu
interdisciplinar,
care
necesit
ă
abilit
ă
ț
i
de
proie ctare,
dezvoltare
web,
baze
de
date
ș
i
codificare,
domenii
necesare
pentru în
ț
elegerea rezult atelor ob
ț
inute prin tehnici de exploata re a datelor text.
În
consecin
ț
ă
,
pentru
aplicarea
unor
tehnici
de
procesare
ș
i
prelucrare
date
text
ș
i
pentru
a
ob
ț
ine
rezultate
semnificative
ș
i
interesante
pentru
a
fi
analizate
ș
i
vizualizate,
am
ales
un
domeniu
care
a
avut
o
cre
ș
tere
exponen
ț
ial
ă
a
interesului
ș
i
implicit
a
datelor
colectate: poluarea în jude
ț
ele din România.
Astfel,
poluarea
aerului
ș
i
poluarea
apei
cauzate
de
industrie
reprezint
ă
probleme
de
mediu
grave
în
România.
Fabricile,
instala
ț
iile
chimice
ș
i
centralele
electrice
din
ț
ar
ă
depind
foarte
mult
de
arderea
combustibililor
fosili,
un
proces
care
emite
niveluri
ridicate
de
dioxid
de carbon
ș
i dioxid de su lf – o component
ă
cheie a ploilor acide.
Centrele
industriale
în
centrul
României
ș
i
Giurgiu,
în
sud,
produc
probleme
severe
de
poluare
a
aerului.
Bucure
ș
tiul,
capitala,
produce,
de
asemenea,
o
poluare
grav
ă
a
aerului.
O
mare
parte
din
scurgerile
industriale
ale
na
ț
iunii
se
termin
ă
în
sistemul
Dun
ă
rii,
ceea
ce
face
ca
apa
s
ă
fie
nesigur
ă
pentru
b
ă
ut
ș
i
amenin
ț
ând
diversele
ecosisteme
ale
deltei
Dun
ă
rii.
Totodat
ă
practicile
agricole
slabe,
în
special
rota
ț
ia
necorespunz
ă
toare
a
culturilor,
au dus la degradarea
ș
i eroziunea sever
ă
a solului în unele p
ă
r
ț
i ale României.
Astfel,
consider
c
ă
doar
prin
investigarea
procesului
de
poluare
prin
ob
ț
inerea
de
cuno
ș
tin
ț
e
ș
i
modele
utile
vom
putea
combate
acest
fenomen
nociv
–
poluarea
din
jude
ț
ele
din România – fenomen care ne afecteaz
ă
s
ă
n
ă
tatea în fiecare zi.
5
3
PREZENTAREA APLICA
Ț
IEI
În
acest
capitol
voi
prezenta
aplica
ț
ia
realizat
ă
din
perspectiva
urm
ă
toarelor
aspecte:
pa
ș
ii
realiza
ț
i
pentru
a
alege
setul
de
date,
pa
ș
ii
detalia
ț
i
pentru
realizarea
procesului
de
implementare,
pa
ș
ii
urma
ț
i
pentru
implementarea
efectiv
ă
a
aplica
ț
iei
cât
ș
i
detalierea
fluxului
de
lucru
al
aplica
ț
iei,
urmând
ca
în
capitolele
urm
ă
toare
s
ă
prezint
rezultatele
ob
ț
inute împreun
ă
cu eva luarea acestora.
Urm
ă
rind
fig.
1
prezentat
ă
în
primul
capitol,
aplica
ț
ia
realizat
ă
se
încadreaz
ă
în
categoria
instrumentelor
de
exploatare
de
date
text
care
folosesc
metode
ș
i
tehnici
statistice pentru extragerea informa
ț
iilor semnificative din setul de date ales.
Totodat
ă
,
urm
ă
rind
fig.
2
prezentat
ă
tot
în
capitolul
întâi,
aplica
ț
ia
realizat
ă
se
încadreaz
ă
în
categoria
instrumentelor
de
exploatare
text
care
sunt
utilizate
pentru
analiza
textului
(descompunerea
ș
i
prelevarea
informa
ț
iilor
relevante
din
setul
de
date
text),
cât
ș
i
pentru
procesarea
/prelucrarea
de
date
text
(transformarea
ș
i
manipularea
datelor
pentru
a
putea aplica metodele de analiz
ă
asupra setului de date ales).
A
ș
adar,
ideea
aplica
ț
iei
realizate
porne
ș
te
de
la
aplicarea
unor
tehnici
de
prelucrare
ș
i
de
procesare
a
datel or
text,
folosind
un
set
de
date
semistructurat,
pentru
a
ob
ț
ine
rezultate semnificative sub forma unor statistici.
Totodat
ă
pentru
a
în
ț
elege
mai
bine
rezultatele,
am
construit
în
aplica
ț
ie
ș
i
o
interfa
ț
ă
interactiv
ă
pentru
utilizator
pentru
vizualizarea
datelor
ș
i
în
ț
elegerea
modelelor
care reies din datele prelucrate.
Astfel,
prin
aplicarea
unor
metode
statistice
pentru
prelucrarea
ș
i
procesarea
datelor
pe
un
set
de
date
semistructurat
care
con
ț
ine
informa
ț
ii
despre
cazurile
de
poluare
din
jude
ț
ele
din
România,
am
ob
ț
inut
un
set
de
grafice
care
prezin t
ă
rezultatele
semnificative
sub forma unor statistici interesante.
Printre
metodele
folosite
pentru
prelucrarea
ș
i
procesarea
datelor
pentru
ob
ț
inerea
cuno
ș
tin
ț
elor
utile
din
setul
de
date
ales
se
num
ă
r
ă
:
metode
de
prelucrare
a
textului
în
limba
român
ă
care
se
refer
ă
la
procesarea
diacriticelor
ș
i
a
gramaticii
limbii
române,
metode
pentru
determinarea
unor
distribu
ț
ii
de
valori
ș
i
metode
pentru
determinarea
frecven
ț
ei
unor grupuri de cuvinte (“bag of words”) [2].
6
Pentru
a
realiza
acest
lucru
am
ob
ț
inut
setul
de
date
despre
cazurile
de
poluare
din
România,
raportate
pe
un
site
de
colectare
a
datelor
pentru
institu
ț
iile
de
stat
administrative
publice
[3],
le-am
preprocesat
într-un
format
care
s
ă
poat
ă
fi
citit
de
baza
de
date
aleas
ă
:
MongoDB
[4]
(JSON),
iar
apoi
am
aplicat
metodele
de
prelucrare
ș
i
procesare
a
setului
de
date
men
ț
ionate
mai
sus
în
vederea
ob
ț
inerii
unor
grafice
cu
rezultate
semnificative
pe
care
le-am construit cu ajutorul bibliotecilor Javascript D3.js [5]
ș
i DC.js [6].
Totodat
ă
,
pentru
comunicarea
cu
baza
de
date
MongoDB
am
implementat
un
server
în
Python,
iar
pentru
vizualizarea
datelor
în
browser
am
realizat-o
cu
ajutorul
web
framework-ul
Flask.
În
consecin
ț
ă
,
au
rezultat
un
set
de
grafice
reprezentative
pentru
setul
de date colectat despre cazurile de poluare din România.
Scopul
aplica
ț
iei
este
de
a
observa
statistici
despre
setul
de
date
folosit
ș
i
totodat
ă
pentru a crea o experien
ț
ă
de vizualizare interactiv
ă
pentru utilizatori.
Pentru
a
ob
ț
ine
acest
lucru,
am
folosit
dou
ă
seturi
de
date
ș
i
o
suit
ă
de
alte
tehnologii pe care le voi detalia mai jos astfel:
1.
Un
set
de
date
în
format
JSON
care
con
ț
ine
cazurile
de
poluare
raportate
în
jude
ț
ele d in România pe parcursul a zece ani;
2.
Un
set
de
date
în
format
GEOJSON
pentru
maparea
datelor
despre
poluare
pe harta cu jude
ț
ele din România;
3.
MongoDB
pentru
stocarea
setului
de
date
ș
i
pentru
realizarea
de
interog
ă
ri
asupra setului de date;
4.
Python
pentru
construirea
serverului
web
care
s
ă
interac
ț
ioneze
cu
baza
de
date MongoDB
ș
i cu paginile html;
5.
Flask,
un
web
framework
folosit
pentru
interac
ț
iunea
serverului
scris
în
Python cu paginile html;
6.
Biblioteci
javascript
(D3.js
ș
i
DC.js)
pentru
construirea
graficelor
interactive
care con
ț
in statisticile ob
ț
inute;
7.
Paginile
HTML
pentru
înc
ă
rcarea
graficelor
construite
cu
ajutorul
bibliotecilor
Javascript în pagina de browser;
8.
CSS pentru interfa
ț
a aplica
ț
iei.
7
3.1
ALEGEREA SETULUI DE DATE
În
aceast
ă
sec
ț
iune,
voi
eviden
ț
ia
în
mod
detaliat
procesu l
din
spatele
alegerii
setului
de
date
care
con
ț
ine
datele
despre
cazurile
de
poluare
din
jude
ț
ele
din
România
[7].
De
asemenea,
voi
detalia
etapele
care
au
dus
la
alegerea
setului
de
date
necesar
pentru
maparea datelor despre cazurile de poluare pe harta cu jude
ț
ele din România [8].
Astfel
în
c
ă
utarea
unui
set
de
date
care
s
ă
ofere
op
ț
iuni
pentru
procesarea
ș
i
vizualizarea
unor
rezultate
semnificative,
am
g
ă
sit
site-ul
de
colectare
a
datelor
pentru
institu
ț
iile
de
stat
admin istrative
publice
care
reprezint
ă
un
portal
pentru
seturile
de
date
open
source
care
sunt
oferite
de
c
ă
tre
autorit
ă
ț
ile
ș
i
institu
ț
iile
administra
ț
iei
publice
pentru
a
facilita
procesul
de
g
ă
sire,
desc
ă
rcare
ș
i
utilizare
a
informa
ț
iilor
generate
ș
i
oferite
de
c
ă
tre
structurile administrative [3].
În
consecin
ț
ă
,
am
ales
unul
dintre
seturile
de
date
despre
cazurile
de
poluare
raportate
în
jude
ț
ele
din
România
deoarece
acest
set
de
date
permite
procesarea
ș
i
vizualizarea
unor
modele
de
date
ș
i
g
ă
sirea
de
cuno
ș
tin
ț
e
semnificative,
iar
totodat
ă
poluarea
din
jude
ț
ele
din
România
reprezint
ă
un
fenomen
care
ne
impacteaz
ă
s
ă
n
ă
tatea
ș
i
care
ne
afecteaz
ă
în
mod
direct.
Consider
c
ă
doar
prin
investigarea
procesului
de
poluare
prin ob
ț
inerea de cuno
ș
tin
ț
e
ș
i modele utile vom putea combate acest fenomen nociv.
Totodat
ă
,
pe
lâng
ă
setul
de
date
ales
pentru
procesare
ș
i
ob
ț
inerea
de
rezultate
ș
i
modele
utile,
am
ales
s
ă
caut
ș
i
s
ă
manipulez
înc
ă
un
set
de
date
pentru
vizualizarea
datelor
procesate
prin
metode
statistice.
A
ș
adar,
pentru
maparea
ș
i
vizualizarea
datelor
despre
poluare pe harta cu jude
ț
ele din România am ales un set de date în format GEOJSON [8].
De
asemenea,
în
mediul
online
exist
ă
o
serie
de
versiuni
pentru
maparea
ș
i
vizualizarea
unei
h
ă
r
ț
i
cu
jude
ț
ele
din
România
(de
exemplu
[9]
ș
i
[10]).
Astfel,
am
ales
formatul
GEOJSON
deoarece
acesta
este
u
ș
or
incorporabil
cu
ajutorul
bibliotecilor
de
generare
a
graficelor
folosite
în
aplica
ț
ie.
De
ș
i
este
un
format
mai
pu
ț
in
compact
decât
formatul TOPOJSON, acesta este mult mai u
ș
or de folosit
ș
i flexibil.
A
ș
adar,
seturile
de
date
alese
reprezint
ă
un
început
promi
ț
ă
tor
pentru
realizarea
unei
aplica
ț
ii
utile.
În
viitor
setul
de
date
cu
datele
despre
poluare
ar
putea
fi
extins
ș
i
îmbun
ă
t
ă
ț
it pentru a con
ț
ine date mult mai recente despre cazu rile de poluare.
8
3.2
PROCESUL DE IMPLEMENTARE
Înainte
de
a
începe
implementarea,
am
identificat
câ
ț
iva
pa
ș
i
pentru
a-i
urma
pentru
a
preg
ă
ti
setul
de
date
ș
i
de
a
implementa
aplica
ț
ia,
pe
care
îi
voi
detalia
în
aceast
ă
sec
ț
iune.
Abordarea general
ă
a urmat pa
ș
ii:
1.
Identificarea
unui
set
de
date
potrivit
pentru
a
aplica
tehnici
de
procesare
a
datelor
de
tip
text
ș
i
de
vizualizare
a
acestora
care
sa
aib
ă
o
surs
ă
pentru
desc
ă
rcare:
setul
de
date
despre
cazurile
de
poluare
raportate
în
jude
ț
ele
din
România
[7]
care
ofer
ă
foarte
multe
op
ț
iuni
de
procesare
ș
i
vizualizare
cum
ar
fi:
distribu
ț
ia
valorilor
despre
cazurile
de
poluare
pe
ani,
distribu
ț
ia
ș
i
propor
ț
ia
sectoarelor
de
activitate
care
produc
cazurile
de
poluare,
distribu
ț
ia
categoriilor de poluan
ț
i cei mai des întâlni
ț
i etc.
2.
Preprocesarea
ș
i
“cur
ă
ț
area”
setului
de
date
semistructurat
colectat
pentru
a
putea
fi
citit
de
baza
de
date
MongoDB,
unul
dintre
formatele
suportate
de
c
ă
tre baza de date, JSON fiind formatul ales.
3.
Stocarea
datelor
într-o
baz
ă
de
date
potrivit
ă
:
am
folosit
MongoDB
care
este
o baza de date open source flexibil
ă
ș
i scalabil
ă
.
4.
Procesarea,
prelucrarea
ș
i
modelarea
datelor
înainte
de
aplicarea
tehnicilor
de
procesare
ș
i
prelucrare
date
text
cu
ajutorul
metodelor
precum:
metode
de
prelucrare
a
textului
în
limba
român
ă
care
se
refer
ă
la
procesarea
diacriticelor
ș
i a gramaticii limbii române.
5.
Implementarea
serverului
scris
în
Python
care
preia
date
din
baza
de
date
ș
i
ofer
ă
un endpoint prin trimiterea datelor c
ă
tre client (browser).
6.
Implementarea
clientului
care
preia
datele
prelucrate
de
la
server
ș
i
le
expune într-un dashboard.
7.
Implementarea
metodelor
ș
i
tehnicilor
statistice
pentru
determinarea
unor
distribu
ț
ii de valori
ș
i pentru determinarea frecven
ț
ei unor grupuri de cuvinte.
8.
Implementarea graficelor folosind bibliotecile Javascript (d3.js
ș
i dc.js).
9.
Implementarea paginilor html cu css pentru vizualizarea graficelor ob
ț
inute.
9
3.3
PA
Ș
II DE IMPLEMENTARE
Considerând
abordarea
prezentat
ă
anterior,
dup
ă
ce
am
identificat
setul
de
date
folosit, am continuat sa urmez pa
ș
ii ace
ș
tia:
1.
Preprocesarea
setului
de
date
ales
în
vederea
stoc
ă
rii
în
baza
de
date
MongoDB
Pentru
a
putea
stoca
setul
de
date
ales
[7]
în
baza
de
date
MongoDB,
l-am
transformat
într-un
format
suportat
de
c
ă
tre
baza
de
date
ș
i
anume:
JSON.
Am
realizat
acest
lucru
folosind
[11]
pentru
a
ob
ț
ine
urm
ă
torul
fi
ș
ier
în
formatul dorit:
●
poluareRomania.json:
fi
ș
ierul
con
ț
ine
informa
ț
ii
despre
cazurile
de
poluare
raportate
în
jude
ț
ele
din
România
pe
parcursul
a
zece
ani,
iar
câteva din informa
ț
iile utile prelevate sunt urm
ă
toarele:
❏
an_raportare: anul raport
ă
rii cazului de poluare;
❏
nume_operator: numele firmei poluante;
❏
adresa: adresa companiei poluante;
❏
localitate:
localitatea
în
care
firma
poluant
ă
î
ș
i
exercit
ă
activitatea;
❏
jude
ț
: jude
ț
ul în care firma poluant
ă
î
ș
i exercit
ă
activitatea;
❏
companie_parinte: numele companiei p
ă
rinte;
❏
sector_actvitate:
sectorul
de
activitate
în
care
firma
poluant
ă
î
ș
i exercit
ă
activitatea;
❏
activitate_industriala:
numele
activit
ă
ț
ii
industriale
realizate
de
firm
ă
;
❏
poluant: categoria de poluant;
❏
cod_poluant: formula chimic
ă
a poluantului;
❏
cantitate_totala_kg: cantitatea total
ă
de poluare în kg;
❏
cantitate_accidentala_kg: cantitatea accidental
ă
de poluare;
❏
metoda_de_baza: metoda pentru determinarea polu
ă
rii;
❏
tip_metoda: tipul metodei pentru determinarea polu
ă
rii;
❏
descriere_metoda: descriere metod
ă
poluare.
10
2.
Importarea setului de date în baza de date MongoDB
●
Configurarea bazei de date:
❏
Crearea bazei de date numit
ă
poluare;
❏
Crearea colec
ț
iei numit
ă
românia.
●
Importarea
fi
ș
ierului
care
con
ț
ine
setul
de
date
în
format
JSON
în
baza
de
date
MongoDB
cu
urm
ă
toarea
comand
ă
listat
ă
mai
jos (fig. 3):
mongoimport -d pollution -c romania –file
poluareRomania.json –drop
Fig. 3 Importarea setului de date în baza de date [12]
●
Verificarea integrit
ă
ț
ii datelor inserate (fig. 4):
Fig. 4 Vizualizarea unei înregistr
ă
ri în baza de date
3.
Procesarea,
prelucrarea
ș
i
modelarea
datelor
înainte
de
aplicarea
tehnicilor
de procesare
ș
i prelucrare date text
Acest
lucru
a
fost
realizat
în
Javascript
ș
i
Python
cu
ajutorul
metodelor
precum:
metode
de
prelucrare
a
textului
în
limba
român
ă
care
se
refer
ă
la
procesarea diacriticelor
ș
i a gramaticii limbii române.
11
4.
Implementarea
serverului
scris
în
Python
care
preia
date
din
baza
de
date
ș
i
ofer
ă
un endpoint prin trimiterea datelor c
ă
tre client (browser)
Fi
ș
ierul
app.py
reprezint
ă
serverului
ș
i
con
ț
ine
toate
proces
ă
rile
ș
i
toate
func
ț
iile
necesare
pentru
comunicarea
cu
baza
de
date.
Totodat
ă
,
acesta
con
ț
ine to ate rut
ă
rile necesare pentru ob
ț
inerea rezultatelor
ș
i graficelor.
5.
Implementarea
clientului
web
care
preia
datele
prelucrate
de
la
server
ș
i
le
expune într-un dashboard
a.
Configurarea proiectului
●
Pentru
folosirea
corect
ă
a
bibliotecilor
în
mod
eficient
ș
i
corect,
am
urm
ă
rit
câteva
tutoriale
pentru
a
realiza
partea
de
vizualizare
a
aplica
ț
iei
ș
i
anume:
DC.js
Tutorial
[13],
IMDB
Data
Vizualizations
with
D3
+
Dimple.js
[14],
Interactive
Data
Visualization
with
D3.js,
DC.js,
Python
and
MongoDB
[15].
Organizarea
final
ă
a
fi
ș
ierelor
ș
i
a
tehnologiilor
folosite
in
proiect se reg
ă
se
ș
te în figura urm
ă
toare (fig. 5):
Fig. 5 Organizarea ierarhic
ă
a fi
ș
ierelor în proiectul aplica
ț
iei
12
●
Crearea
fi
ș
ierului
pentru
pagina
web
(
index.html
)
ș
i
înc
ă
un
fi
ș
ier necesar pentru crearea grafurilor (
graphs.js
);
●
Ad
ă
ugarea fi
ș
ierelor css
ș
i js necesa re în fi
ș
ierul index.html.
❏
Folosirea
bibliotecilor
D3.js
ș
i
DC.js
pentru
manipularea
datelor
ș
i vizualizarea datelor;
❏
Totodat
ă
,
am
stocat
bibliotecile
folosite
local,
în
fi
ș
ierul
lib, la fel
ș
i pentru fi
ș
ierele s tandard css.
6.
Implementarea
metodelor
ș
i
tehnicilor
statistice
pentru
determinarea
unor
distribu
ț
ii de valori
ș
i pentru determinarea frecven
ț
ei unor grupuri de cuvinte.
●
Printre metodele folosite se num
ă
r
ă
urm
ă
toarele:
❏
Metode
statistice
pentru
determinarea
unor
distribu
ț
ii
de valori;
❏
Metode
statistice
pentru
determinarea
frecven
ț
ei
unor
grupuri de cuvinte (“bag of words”);
❏
Metode
statistice
pentru
determinarea
frecven
ț
ei
unor
valori
ș
i a asocierilor de cuvinte.
7.
Implementarea
graficelor
pentru
vizualizarea
statisticilor
folosind
bibliotecile
Javascript (D3.js
ș
i DC.js).
●
În fi
ș
ierul
graphs.js
am realizat urm
ă
toarele:
❏
Procesarea
ș
i
prelucrarea
datelor
din
baza
de
date
folosind biblioteci implementate în Javascript;
❏
Identificarea
grupurilor
ș
i
a
dimensiunilor
necesare
pentru a crea graficele dorite;
❏
Crearea
efectiv
ă
a
graficelor
pentru
vizualizarea
statisticilor.
8.
Implementarea paginilor html cu css pentru vizualizarea graficelor ob
ț
inute.
În
fi
ș
ierul
index.html
am
ad
ă
ugat
graficele
organizate
într-un
dashboard,
folosind identit
ă
ț
ile specificate în
graphs.js
.
13
3.4
FLUXUL DE LUCRU AL APLICA
Ț
IEI
Considerând
cele
descrise
în
sec
ț
iunile
anterioare,
în
acest
capitol
voi
prezenta
fluxul
de
lucru
al
aplica
ț
iei.
Înainte
de
a
porni
aplica
ț
ia,
urm
ă
toarele
condi
ț
ii
sunt
necesare
a
fi
f
ă
cute în prealabil (fig. 6):
1.
Serverul de baze de date trebuie pornit, folosind urm
ă
toarea comand
ă
:
sudo service mongod start
2.
Serverul scris în Python trebuie pornit pentru a putea rula aplica
ț
ia:
export FLASK_APP=app.py
python -m flask run
3.
Pentru a rula aplica
ț
ia local
ă
, trebuie accesat urm
ă
torul link dintr-un browser:
http://127.0.0.1:5000/
Fig. 6 Pa
ș
ii pentru pornirea aplica
ț
iei
Atunci când aplica
ț
ia este pornit
ă
urm
ă
toarele lucruri se întâmpl
ă
în background:
1.
Serverul
Python
începe
s
ă
ruleze
pe
portul
pe
care
este
setat
(în
cazul
acesta
portul serverului web Flask default
5000
)
ș
i pe adresa localhost (
127.0.0.1
);
2.
Index.html
este înc
ă
rcat fiind conectat la ruta default în serverul Python;
3.
Graphs.js
este înc
ă
rcat fiind unul dintre scripturile incluse cu
index.html;
a.
Datele
sunt
cerute
de
c
ă
tre
serverul
web
Python
ș
i
sunt
luate
din
baza
de date Mongodb;
b.
Datele
sunt
folosite
în
scop
de
prelucrare
ș
i
vizualizare
prin
intermediul graficelor.
4.
Graficele
sunt
înc
ă
rcate
de
c
ă
tre
browser,
browser-ul
bazându-se
pe
id-ul
specificat în fi
ș
ierul
graphs.js
.
14
3.5
REZULTATE OB
Ț
INUTE
În
urm
ă
toarea
sec
ț
iune
voi
prezenta
graficele
ob
ț
inute
prin
prelucrarea
datelor
din
setul
de
date
despre
poluarea
jude
ț
elor
din
România
ș
i
totodat
ă
,
dashboard-ul
interactiv
creat cu ajutorul graficelor care prezint
ă
statisticile cu privire la poluarea din România.
Prin
urmare,
dashboard-ul
creat
se
reg
ă
se
ș
te
în
întregime
în
urm
ă
toarele
4
figuri
ș
i
anume:
primele
dou
ă
figuri
(fig.
7
ș
i
fig.
8)
cu
dashboard-ul
reprezint
ă
doar
vizualizarea
graficelor la accesarea link-ului din browser cu aplica
ț
ia construit
ă
.
Fig. 7 Dashboard-ul cu graficele aplica
ț
iei f
ă
r
ă
interac
ț
iunea utilizatorului
Fig. 8 Dashboard-ul cu graficele aplica
ț
iei f
ă
r
ă
interac
ț
iunea utilizatorului
Urm
ă
toarele
dou
ă
figuri
(fig.
9
ș
i
fig.
10)
reprezint
ă
interac
ț
iunea
utilizatorului
cu
dashboard-ul, astfel:
●
utilizatorul apas
ă
pe unul dintre jude
ț
ele din România;
●
utilizatorul
poate
astfel
observa
cum
toate
graficele
din
cadrul
dashboard-ului
sunt actualizate cu date specifice doar pentru acel jude
ț
;
15
●
utilizatorul
poate
s
ă
apese
pe
înc
ă
un
alt
jude
ț
din
România
ș
i
va
vedea
c
ă
toate graficele vor fi actualizate cu date specifice celor dou
ă
jude
ț
e;
●
astfel,
un
utilizator
poate
interac
ț
iona
cu
oricare
dintre
grafice
realizate
în
dashboard-ul
interactiv,
iar
toate
celelalte
grafice
se
vor
actualiza
în
mod
sincron cu date specifice select
ă
rii.
Fig. 9 Dashboard-ul cu graficele aplica
ț
iei cu interac
ț
iunea utilizatorului
Fig. 10 Dashboard-ul cu graficele aplica
ț
iei cu interac
ț
iunea utilizatorului
A
ș
adar,
dashboar d-ul
prezentat
în
cele
patru
figuri
(fig.
7,
8,
9
ș
i
10)
con
ț
ine
graficele
care
prezint
ă
statisticile
colectate
cu
ajutorul
setului
de
date
ș
i
sunt
reprezentative
pentru
setul de date ales. În continuare, voi descrie fiecare grafic
ș
i rezultatele ob
ț
inute.
Astfel,
figurile
7
ș
i
8
prezint
ă
dashboard-ul
care
apare
odat
ă
cu
deschiderea
aplica
ț
iei
ș
i
accesarea
acesteia,
iar
figurile
9
ș
i
10
prezint
ă
dashboard-ul
atunci
când
o
parte
din
date
sunt
selectate
de
c
ă
tre
utilizator
în
interfa
ț
ă
ș
i
atunci
toate
graficele
sunt
populate
ș
i
actualizate cu informa
ț
ii, bazându-se pe informa
ț
iile specifice solicitate de c
ă
tre utilizator.
16
Figura
11
reprezint
ă
un
grafic
de
tip
“map”
(hart
ă
),
care
reprezint
ă
baza
aplica
ț
iei
deoarece
cu
ajutorul
acestuia
se
pot
vizualiza
jude
ț
ele
României
împreun
ă
cu
totalul
polu
ă
rii
în
kg,
ș
i
anume
distribu
ț
ia
polu
ă
rii
pe
jude
ț
e.
A
ș
adar,
în
figur
ă
se
poate
observa
c
ă
se
poate
trece
cu
mouse-ul
deasupra
h
ă
r
ț
ii
ș
i
c
ă
informa
ț
iile
necesare
vor
putea
fi
vizualizate
per
jude
ț
.
Fig. 11 Map chart – harta României cu distribu
ț
ia polu
ă
rii pe jude
ț
e
Pentru
realizarea
acestui
grafic
(fig.
11),
am
folosit
dou
ă
seturi
de
date:
un
set
de
date
pentru
maparea
jude
ț
elor
pe
hart
ă
(un
geojson
con
ț
inând
numele
jude
ț
elor
împreun
ă
cu
propriet
ă
ț
ile
ș
i
coordonatele
acestora
[8])
ș
i
înc
ă
un
set
de
date
pentru
maparea
valorilor
de
poluare
a
jude
ț
elor
pe
hart
ă
(setul
de
date
de
pe
site-ul
institu
ț
iilor
de
administra
ț
ie
public
ă
a
statului
[7]).
Astfel,
am
putut
calcula
mapa
distribu
ț
ia
valorilor
de
poluare
din
jude
ț
ele
din
România
într-un
mod
interactiv
cu
ajutorul
scripturilor
Python
ș
i
a
bibliotecilor
Javascript DC.js
ș
i D3.js.
Totodat
ă
,
datorit
ă
faptului
c
ă
pentru
acest
grafic
am
folosit
dou
ă
seturi
de
date,
au
fost
necesare
anumite
proces
ă
ri
ale
datelor
în
cod,
în
mare
parte
datorit
ă
inconsisten
ț
elor
datelor
în
cele
dou
ă
seturi
de
date:
diacriticele,
spa
ț
iile
sau
liniile
de
leg
ă
tur
ă
erau
inconsistente
în
cele
dou
ă
seturi
de
date
ș
i
au
fost
a
ș
adar
procesate
pentru
o
mapare
corect
ă
.
Mai
mult
decât
atât,
în
seturile
de
date
au
fost
corectate
tipurile
de
date
ș
i
inconsisten
ț
ele legate de inexisten
ț
a unor valori în seturile de da te.
17
Figura
12
reprezint
ă
un
grafic
de
tip
“bar”
(cu
bare),
unde
valorile
anilor
care
se
reg
ă
sesc
în
setul
de
date
sunt
plasate
pe
axa
OX,
iar
num
ă
rul
cazurilor
de
poluare
în
jude
ț
ele
din
România
sunt
plasate
pe
axa
OY.
Astfel,
se
poate
observa
faptul
c
ă
valorile
din
setul
de
date
folosit
nu
sunt
foarte
actualizate
sau
recente,
iar
cazurile
de
poluare
din
cadrul
jude
ț
elor
din
România
nu
sunt
raportate,
neexistând
un
plan
al
combaterii
polu
ă
rii
în
rândul
institu
ț
iilor de stat.
Fig. 12 Bar chart – distribu
ț
ia num
ă
rului de cazuri de poluare pe ani
Figura
13
reprezint
ă
un
grafic
de
tip
“pie”
(pl
ă
cint
ă
)
ș
i
con
ț
ine
cazurilor
de
poluare
ș
i
a
num
ă
rului
acestora
pe
categoriile
de
poluan
ț
i
reg
ă
si
ț
i
în
jude
ț
ele
din
România.
A
ș
adar,
în
grafic
este
reprezentat
ă
ș
i
propor
ț
ia
pe
care
categoriile
de
polu an
ț
i
o
ocup
ă
în
setul
de
date
folosit, cea mai popular
ă
categorie de poluan
ț
i reprezentând-o amoniacul.
Fig. 13 Pie chart – distribu
ț
ia cazurilor de poluare pe categoriile de poluan
ț
i
18
Figura
14
reprezint
ă
un
alt
grafic
tot
de
tip
“pie”
(pl
ă
cint
ă
)
ș
i
prezint
ă
distribu
ț
ia
metodelor
folosite
pentru
determinarea
cazurilor
de
poluare
în
cadrul
jude
ț
elor
din
România
ș
i totodat
ă
, cuprinde pro por
ț
ia pe care aceste metode folosite le ocup
ă
în setul de date.
Fig. 14 Pie chart – distribu
ț
ia metodelor folosite pentru determinarea polu
ă
rii
În
continuare,
voi
prezenta
un
grafic
care
prezint
ă
statistici
cu
privire
la
frecven
ț
a
grupurilor
care
con
ț
in
tipurile
cele
mai
poluante
sectoare
de
activitate
selectate.
A
ș
adar,
în
figura
15
se
reg
ă
se
ș
te
un
grafic
de
tip
“row”
(cu
rânduri)
în
care
se
prezint
ă
grupurile
de
sectoare
de
activitate
cele
mai
poluante
în
setul
de
date
ș
i
care
ocup
ă
cea
mai
mare
propor
ț
ie
din
setul
de
date,
cât
ș
i
num
ă
rul
de
cazuri
de
poluare
identificate
în
respectivele
sectoare.
Prin
realizarea
acestui
grafic,
s-au
identificat
grupurile
de
cuvinte
cele
mai
frecvente (“bag of words”) pentru identificarea celor mai poluante sectoare de activitate.
Fig. 15 Row chart – distribu
ț
ia num
ă
rului de cazuri de poluare pe sector de activitate
19
3.6
EVALUAREA REZULTATELOR
Prin
urmare
pân
ă
acum
în
capitolul
anterior
am
prezentat
dashboard-ul
cu
grafice,
iar în continuare voi detalia statisticile rezultate în leg
ă
tur
ă
cu setul de date ales precum:
●
frecven
ț
a
cazurilo r
de
poluare
raportate
în
jude
ț
ele
din
România
pe
parcursul
a
zece
ani
(setul
de
date
ales
având
cele
mai
multe
cazuri
raportate
de
poluare
în
anul
2008,
iar
cazurile
de
poluare
raportate
g
ă
site
în
setul
de
date
nu
reprezint
ă
cele
mai
recente
valori
raportate
în
ultimii
ani,
lucru
care
poate
fi
îmbun
ă
t
ă
ț
it
într-o
viitoare
itera
ț
ie a aplica
ț
iei);
●
frecven
ț
a
categor iilor
de
poluan
ț
i
cei
mai
des
întâlni
ț
i
în
cazurile
de
poluare
raportate
în
jude
ț
ele
din
România
(amoniacul,
dioxidul
de
carbon,
oxizii
de
azot
ș
i
metanul
reprezentând
categoriile
de
poluan
ț
i
cele
mai
frecvente
întâlnite
în
cazurile
de
poluare raportate în România);
●
frecven
ț
a
metod elor
pentru
determinarea
cazurilor
de
poluare
din
jude
ț
ele
din
România
(în
graficul
cu
distribu
ț
ia
metodelor
folosite
pentru
determinarea
cazurilor
de
poluare
sunt
folosite
denumirile
ș
tiin
ț
ifice
ale
meto delor,
iar
propor
ț
ia
cea
mai
mare
o
reprezint
ă
metodele
bazate
pe
calcule
ș
i
m
ă
sur
ă
tori
ș
i
propor
ț
ia
cea
mai
mic
ă
o reprezint
ă
metodele bazate pe estim
ă
ri);
●
frecven
ț
a
sectoar elor
de
activitate
care
provoac
ă
cele
mai
multe
cazuri
de
poluare
în
jude
ț
ele
din
Rom ânia
cât
ș
i
distribu
ț
ia
num
ă
rului
de
cazuri
de
poluare
per
sector
de
activitate
(a
ș
adar ,
sectorul
energetic
ș
i
produc
ț
ia
animal
ă
intensiv
ă
cât
ș
i
acvacultura
produc cele mai multe cazuri de poluare în jude
ț
ele din România);
●
distribu
ț
ia
polu
ă
rii
în
jude
ț
ele
din
România
eviden
ț
iat
ă
prin
totalul
polu
ă
rii
în
kg
al
fiec
ă
rui
jude
ț
,
realizat
ă
cu
ajutorul
unei
h
ă
r
ț
i
cu
jude
ț
ele
din
România
(cele
mai
poluate
jude
ț
e
sunt
cele
eviden
ț
iate
cu
culoarea
portocal iu
închis,
urmate
de
jude
ț
ele
eviden
ț
iate cu por tocaliu deschis, verde, albastru închis
ș
i albastru deschis).
A
ș
adar,
evaluând
graficele
detaliate
mai
sus
se
poate
observa
c
ă
setul
de
date
ales
este
unul
concludent
care
poate
fi
îmbun
ă
t
ă
ț
it
pentru
a
cuprinde
date
mai
recente
despre
poluarea
din
România.
Totodat
ă
statisticile
rezultate
din
setul
de
date
sunt
interesante
ș
i
reprezint
ă
un
punct
de
plecare
pentru
extinderea
aplica
ț
iei
ș
i
pentru
în
ț
elegerea
întregului
fenomen de poluare care ne afecteaz
ă
s
ă
n
ă
tatea în fiecare zi.
20
4
LIMIT
Ă
RI
Ș
I DIREC
Ț
II DE EXPLORARE PENTRU VIITOR
În
continuare,
în
aceast
ă
sec
ț
iune
voi
prezenta
limit
ă
rile
aplica
ț
iei
dezvoltate
ș
i
prezentate
în
sec
ț
iunile
anterioare,
dar
totodat
ă
voi
eviden
ț
ia
atât
direc
ț
iile
cât
ș
i
abord
ă
rile
pe care le voi putea explora în viitor în vederea îmbun
ă
t
ă
ț
irii rezultatelor ob
ț
inute:
1.
Îmbun
ă
t
ă
ț
irea
setului
de
date
ales
prin
folosirea
unor
date
mai
recente
în
vederea ob
ț
inerii unor date mai exacte
ș
i a unor r ezultate mai complexe
În
aplica
ț
ia
curent
ă
realizat
ă
,
am
folosit
un
set
de
date
semistructurat
oferit
de
c
ă
tre
un
site
de
colectare
a
datelor
a
institu
ț
iilor
de
stat
administrative
ș
i
publice
ale
României
[7]
care
con
ț
ine
date
despre
cazurile
de
poluare
din
România
de-a
lungul
a
zece
ani,
neavând
date
actualizate
despre
ultimele
cazuri
recente
de
poluare
din
jude
ț
ele
din
România.
Astfel,
prin
îmbun
ă
t
ă
ț
irea
setului
de
date
ales,
lucru
care
poate
fi
realizat
prin
al
ă
turarea
unor
date
mai
recente
la
setul
de
date
folosit,
s-ar
putea
ob
ț
ine
rezultate
mai
concludente
ș
i
mai complexe pentru în
ț
elegerea fenomenului de poluare din România.
2.
Folosirea
de
metode
de
prelucrare
ș
i
procesare
date
mult
mai
avansate
în
vederea aplic
ă
rii unor algoritmi mai complec
ș
i asupra setului de date ales
Prin
urmare,
pe
lâng
ă
faptul
c
ă
folosirea
unui
set
de
date
mai
cuprinz
ă
tor
ar
putea
duce
la
ob
ț
inerea
unor
rezultate
mai
semnificative
ș
i
interesante,
tot
la
fel
ar
putea
contribui
ș
i
folosirea
unor
metode
de
prelucrare
ș
i
procesare
date
mult
mai
avansate.
Astfel,
în
aplica
ț
ia
realizat
ă
am
folosit
metode
statistice
pentru
prelucrarea
ș
i
procesarea
datelor
cum
ar
fi:
metode
de
prelucrare
a
textului
în
limba
român
ă
care
se
refer
ă
la
procesarea
diacriticelor
ș
i
a
gramaticii
limbii
române,
metode
pentru
determinarea
unor
distribu
ț
ii
de
valori
ș
i
a
frecven
ț
ei
unor
grupuri
de
cuvinte.
În
consecin
ț
ă
,
consider
c
ă
folosirea
unor
tehnici
de
exploatarea
a
datelor
mult
mai
avansate
realizate
pe
baza
setului
de
date
ales
ar
putea
duce
la
ob
ț
inerea
unor
rezultate
mai
interesant
ș
i la vizualizarea unor modele mult mai concludente.
21
5
CONCLUZII
În
concluzie,
datorit
ă
cre
ș
terii
rapide
a
volumului
de
date
digitale,
exploatarea
de
text
(“text
mining”
sau
extragerea
de
modele
interesante
din
text)
a
devenit
un
domeniu
care
a
atras
aten
ț
ia
cuve nit
ă
unei
nevoi
viitoare
de
transformare
a
datelor
în
informa
ț
ii
ș
i
cuno
ș
tin
ț
e
utile.
În
consecin
ț
ă
,
exist
ă
un
interes
crescut
în
domeniul
cercet
ă
rii
ș
i
exploat
ă
rii
datelor
de
tip
text.
În
general,
exploatarea
textului
const
ă
în
analiza
unei
cantit
ă
ț
i
mari
de
date
text
prin
extragerea
expresiilor
cheie,
concepte
etc
ș
i
în
preg
ă
tirea
textului
procesat
pentru
o
analiz
ă
ulterioar
ă
cu
tehnici
de
extragere
a
cuno
ș
tin
ț
elor
utile
din
setul
de
date
ales.
Totodat
ă
,
disponibilitatea
unui
volum
mare
de
date
text
este
necesar
pentru
a
putea
extrage
informa
ț
ii
utile.
Tehnicile
de
exploatare
a
textului
sunt
folosite
pentru
a
analiza
ș
i
a
extrage
informa
ț
ii
releva nte
ș
i
interesante
într-un
mod
eficient
din
cantit
ă
ț
i
de
seturi
mari
de
date
semistructurate
sau
nestructurate.
Selectarea
ș
i
utilizarea
tehnicilor
ș
i
uneltelor
adecvate
fac
procesul
de
exploatare
datelor
text
ș
i
de
reg
ă
sire
de
informa
ț
ii
utile
s
ă
devin
ă
mai u
ș
or
ș
i mai eficient.
Astfel,
în
aceast
ă
lucrare
am
realizat
ș
i
prezentat
în
detaliu
o
aplica
ț
ie
care
poate
reprezenta
un
început
pentru
investigarea,
aprofundarea
ș
i
în
ț
elegerea
fenomenului
de
poluare
din
România.
Totodat
ă
,
aceast
ă
aplica
ț
ie
poate
fi
extins
ă
pentru
a
folosi
ș
i
exploata
tehnici
mai
complexe
de
text
mining
asupra
unui
set
de
date
mai
recent
ș
i
actualizat
pentru
a
ajuta
la
în
ț
elegerea
ș
i
combaterea
fenomenului
de
poluare
din
jude
ț
ele
din
România
care
ne afecteaz
ă
s
ă
n
ă
tatea în fiecare zi.
A
ș
adar,
fenomen ul
de
poluare
reprezint
ă
un
domeniu
de
interes
public
care
nu
impacteaz
ă
doar
statul
român
ci
toate
ț
ă
rile
de
pe
întregul
glob,
iar
combatarea
ș
i
în
ț
elegerea
acestui
fenom en
este
un
proces
anevoios
care
poate
fi
u
ș
urat
prin
procesul
de
prelevare
ș
i procesare/pr elucrare a datelor despre poluare.
Acest
lucru
poate
fi
realizat
doar
dac
ă
statele
respective
au
grij
ă
ca
datele
despre
poluare
s
ă
fie
raportate
în
mod
clar
ș
i
precis,
iar
informa
ț
iile
sa
fie
cele
reale
pentru
ca
rezultatele
ob
ț
inute
s
ă
fie
concludente
ș
i
de
ajutor
în
combaterea
fenomenului
nociv
de
poluare care ne pune în pericol s
ă
n
ă
tatea zilnic.
22
6
BIBLIOGRAFIE
Ș
I REFERIN
Ț
E
[1] “Comparison of Text Mining Tools”, Arvinder Kaur, Deepti Chopra, 2016
[2]
https://machinelearningmastery.com/gentle-introduction-bag-words-model/
[3]
https://data.gov.ro/
[4]
https://www.mongodb.com/
[5]
https://d3js.org/
[6]
https://dc-js.github.io/dc.js/
[7]
https://data.gov.ro/dataset/emisii_in_aer/resource/bdf0854e-ee5d-4892-ba12-9eac823
d7c80
[8]
https://savuraluca.carto.com/tables/ro_judete_poligon/public
[9]
https://github.com/deldersveld/topojson/blob/master/countries/romania/romania-coun
ties.json
[10]
https://github.com/codeforamerica/click_that_hood/blob/master/public/data/romania.
geojson
[11]
https://www.freecodeformat.com/excel-json.php
[12]
https://riptutorial.com/mongodb/example/21735/mongoimport-with-json
[13]
https://www.tutorialspoint.com/dcjs/index.htm
[14]
http://www.andreykurenkov.com/writing/project/visualizing-imdb-data-with-d3/
[15]
http://adilmoujahid.com/posts/2015/01/interactive-data-visualization-d3-dc-python-m
ongodb/
23
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: MASTER ABD, ANUL 2, SEMESTRUL 2 2020 CUPRINS Cuprins 2 Abstract 3 1 Introducere 4 [632144] (ID: 632144)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
