Cum se face analiza exploratorie a datelor (EDA) în R (cu exemple)

Aflați tot ce trebuie să știți despre analiza exploratorie a datelor, un proces critic folosit pentru a descoperi tendințe și modele și pentru a rezuma seturi de date cu ajutorul rezumatelor statistice și reprezentărilor grafice.

Ca orice proiect, un proiect de știință a datelor este un proces lung care necesită timp, bună organizare și respect scrupulos pentru mai mulți pași. Analiza exploratorie a datelor (EDA) este unul dintre cei mai importanți pași ai acestui proces.

Prin urmare, în acest articol, vom analiza pe scurt ce este analiza exploratorie a datelor și cum o puteți efectua cu R!

Ce este analiza exploratorie a datelor?

Analiza exploratorie a datelor examinează și studiază caracteristicile unui set de date înainte ca acesta să fie transmis unei aplicații, fie exclusiv de afaceri, statistice sau învățare automată.

Acest rezumat al naturii informațiilor și al principalelor sale particularități este realizat de obicei prin metode vizuale, cum ar fi reprezentări grafice și tabele. Practica este efectuată în avans tocmai pentru a evalua potențialul acestor date, care vor primi un tratament mai complex în viitor.

Prin urmare, EDA permite:

  • Formulați ipoteze pentru utilizarea acestor informații;
  • Explorați detalii ascunse în structura datelor;
  • Identificați valorile lipsă, valorile aberante sau comportamentele anormale;
  • Descoperiți tendințele și variabilele relevante în ansamblu;
  • Eliminați variabilele irelevante sau variabilele corelate cu altele;
  • Determinați modelarea formală care trebuie utilizată.

Care este diferența dintre analiza descriptivă și cea exploratorie a datelor?

Există două tipuri de analiză a datelor, analiza descriptivă și analiza exploratorie a datelor, care merg mână în mână, în ciuda faptului că au obiective diferite.

În timp ce primul se concentrează pe descrierea comportamentului variabilelor, de exemplu, medie, mediană, mod etc.

Analiza exploratorie își propune să identifice relațiile dintre variabile, să extragă perspective preliminare și să direcționeze modelarea către cele mai comune paradigme de învățare automată: clasificare, regresie și grupare.

În comun, ambele se pot ocupa de reprezentarea grafică; totuși, doar analiza exploratorie urmărește să aducă perspective acționabile, adică perspective care provoacă acțiuni din partea decidentului.

  Cum să vă transferați Crypto-ul într-un portofel de depozitare la rece (pas cu pas)

În cele din urmă, în timp ce analiza exploratorie a datelor urmărește să rezolve probleme și să aducă soluții care să ghideze etapele de modelare, analiza descriptivă, așa cum sugerează și numele, urmărește doar să producă o descriere detaliată a setului de date în cauză.

Analiză descriptivă Analiza exploratorie a datelor Analizează comportamentul Analizează comportamentul și relația Oferă un rezumat Conduce la specificații și acțiuni Organizează datele în tabele și graficeOrganizează datele în tabele și grafice Nu are putere explicativă semnificativă Are o putere explicativă semnificativă

Câteva cazuri de utilizări practice ale EDA

#1. Marketing digital

Marketingul digital a evoluat de la un proces creativ la un proces bazat pe date. Organizațiile de marketing folosesc analiza exploratorie a datelor pentru a determina rezultatele campaniilor sau eforturilor și pentru a ghida investițiile consumatorilor și deciziile de direcționare.

Studiile demografice, segmentarea clienților și alte tehnici permit agenților de marketing să utilizeze cantități mari de date despre achiziții, sondaje și panel de consumatori pentru a înțelege și comunica strategia de marketing.

Analiza exploratorie web permite marketerilor să colecteze informații la nivel de sesiune despre interacțiunile de pe un site web. Google Analytics este un exemplu de instrument de analiză gratuit și popular pe care marketerii îl folosesc în acest scop.

Tehnicile exploratorii utilizate frecvent în marketing includ modelarea mixului de marketing, analizele de preț și promovare, optimizarea vânzărilor și analiza exploratorie a clienților, de exemplu, segmentarea.

#2. Analiza exploratorie a portofoliului

O aplicație comună a analizei exploratorii a datelor este analiza exploratorie a portofoliului. O bancă sau o agenție de creditare are o colecție de conturi de diferite valori și riscuri.

Conturile pot diferi în funcție de statutul social al titularului (bogat, clasa de mijloc, sărac, etc.), locația geografică, valoarea netă și mulți alți factori. Creditorul trebuie să echilibreze rentabilitatea împrumutului cu riscul de neplată pentru fiecare împrumut. Întrebarea devine apoi cum să evaluăm portofoliul ca întreg.

Împrumutul cu cel mai scăzut risc poate fi pentru oameni foarte bogați, dar există un număr foarte limitat de oameni bogați. Pe de altă parte, mulți oameni săraci pot da împrumuturi, dar cu un risc mai mare.

Soluția exploratorie de analiză a datelor poate combina analiza seriilor temporale cu multe alte probleme pentru a decide când să împrumute bani acestor segmente diferite de debitori sau rata de împrumut. Dobânda este percepută membrilor unui segment de portofoliu pentru a acoperi pierderile dintre membrii acelui segment.

  Cum poți reseta o placă

#3. Analiza exploratorie a riscurilor

Modelele predictive în domeniul bancar sunt dezvoltate pentru a oferi certitudine cu privire la scorurile de risc pentru clienții individuali. Scorurile de credit sunt concepute pentru a prezice comportamentul delicvent al unei persoane și sunt utilizate pe scară largă pentru a evalua solvabilitatea fiecărui solicitant.

În plus, analiza riscurilor este efectuată în lumea științifică și în industria asigurărilor. De asemenea, este utilizat pe scară largă în instituțiile financiare, cum ar fi companiile de gateway de plată online, pentru a analiza dacă o tranzacție este autentică sau frauduloasă.

În acest scop, folosesc istoricul tranzacțiilor clientului. Este mai frecvent utilizat în achizițiile cu cardul de credit; atunci când există o creștere bruscă a volumului tranzacțiilor clientului, clientul primește un apel de confirmare dacă a inițiat tranzacția. De asemenea, ajută la reducerea pierderilor din astfel de circumstanțe.

Analiza exploratorie a datelor cu R

Primul lucru de care trebuie să efectuați EDA cu R este să descărcați R base și R Studio (IDE), urmate de instalarea și încărcarea următoarelor pachete:

#Installing Packages
install.packages("dplyr")
install.packages("ggplot2")
install.packages("magrittr") 
install.packages("tsibble")
install.packages("forecast")
install.packages("skimr")

#Loading Packages
library(dplyr)
library(ggplot2)
library(magrittr)
library(tsibble)
library(forecast)
library(skimr)

Pentru acest tutorial, vom folosi un set de date economice care vine încorporat cu R și oferă date anuale de indicatori economici ai economiei SUA și vom schimba numele în econ pentru simplitate:

econ <- ggplot2::economics

Pentru a efectua analiza descriptivă, vom folosi pachetul skimr, care calculează aceste statistici într-un mod simplu și bine prezentat:

#Descriptive Analysis
skimr::skim(econ)

De asemenea, puteți utiliza funcția de rezumat pentru analiza descriptivă:

Aici analiza descriptivă arată 547 de rânduri și 6 coloane în setul de date. Valoarea minimă este pentru 1967-07-01, iar cea maximă pentru 2015-04-01. În mod similar, arată și valoarea medie și abaterea standard.

Acum aveți o idee de bază despre ceea ce se află în setul de date econ. Să trasăm o histogramă a variabilei uempmed pentru a privi mai bine datele:

#Histogram of Unemployment
econ %>%
  ggplot2::ggplot() +
  ggplot2::aes(x = uempmed) +
  ggplot2::geom_histogram() +
  labs(x = "Unemployment", title = "Monthly Unemployment Rate in US between 1967 to 2015")

Distribuția histogramei arată că are o coadă alungită în dreapta; adică există posibil câteva observații ale acestei variabile cu valori mai „extreme”. Se pune întrebarea: în ce perioadă au avut loc aceste valori și care este tendința variabilei?

  Cum să adaugi prieteni pe Nintendo Switch

Cel mai direct mod de a identifica tendința unei variabile este printr-un grafic cu linii. Mai jos generăm un grafic cu linii și adăugăm o linie de netezire:

#Line Graph of Unemployment
econ %>%
  ggplot2::autoplot(uempmed) +
  ggplot2::geom_smooth()

Folosind acest grafic, putem identifica că în cea mai recentă perioadă, în ultimele observații din 2010, există o tendință de creștere a șomajului, depășind istoria observată în deceniile precedente.

Un alt punct important, mai ales în contexte de modelare econometrică, este staționaritatea seriei; adică media și varianța sunt constante în timp?

Când aceste ipoteze nu sunt adevărate într-o variabilă, spunem că seria are o rădăcină unitară (nestaționară) astfel încât șocurile pe care le suferă variabila generează un efect permanent.

Se pare că a fost cazul variabilei în cauză, durata șomajului. Am văzut că fluctuațiile variabilei s-au schimbat considerabil, ceea ce are implicații puternice legate de teoriile economice care se ocupă de cicluri. Dar, plecând de la teorie, cum verificăm practic dacă variabila este staționară?

Pachetul de prognoză are o funcție excelentă care permite aplicarea unor teste, cum ar fi ADF, KPSS și altele, care returnează deja numărul de diferențe necesare pentru ca seria să fie staționară:

 #Using ADF test for checking stationarity
forecast::ndiffs( 
  x    = econ$uempmed,
  test = "adf")

Aici valoarea p mai mare de 0,05 arată că datele sunt non-staționare.

O altă problemă importantă în seriile de timp este identificarea posibilelor corelații (relația liniară) între valorile întârziate ale seriei. Corelogramele ACF și PACF ajută la identificarea acestuia.

Întrucât seria nu are sezonalitate, dar are o anumită tendință, autocorelațiile inițiale tind să fie mari și pozitive deoarece observațiile apropiate în timp sunt și ele apropiate ca valoare.

Astfel, funcția de autocorelare (ACF) a unei serii de timp în tendințe tinde să aibă valori pozitive care scad încet pe măsură ce întârzierile cresc.

#Residuals of Unemployment 
checkresiduals(econ$uempmed) 
pacf(econ$uempmed)

Concluzie

Când punem mâna pe date mai mult sau mai puțin curate, adică deja curățate, suntem imediat tentați să ne aruncăm în faza de construcție a modelului pentru a trage primele rezultate. Trebuie să rezistați acestei tentații și să începeți să faceți o analiză exploratorie a datelor, care este simplă, dar ne ajută să obținem perspective puternice asupra datelor.

De asemenea, puteți explora unele dintre cele mai bune resurse pentru a învăța statistici pentru Data Science.