Enota 3 / 11

Čiščenje podatkov, transformacija in raziskovalna analiza (s podporo za Python/pandas)

Dobički:

  • Sposobnost čiščenja surovih ekonomskih podatkov (manjkajoča opazovanja, zmeda enot, frekvenčno neujemanje) in priprava za analizo s pomočjo umetne inteligence
  • Sposobnost tiskanja standardnih ekonomskih transformacij, kot so realno-nominalna pretvorba, indeksacija, stopnja rasti, desezoniranje, kot kode v umetno inteligenco in njihovo ročno preverjanje
  • Sposobnost prepoznavanja podatkov s pomočjo raziskovalne analize podatkov (zbirna statistika, distribucija, odstopanja, korelacija) in kritičnega branja povzetkov umetne inteligence

Gospodarski podatki so redko pripravljeni za analizo. V tabeli, ki ste jo prenesli iz TURKSTAT, manjka nekaj mesecev, en stolpec je kot besedilo s tisoč oklepaji, menjalni tečaj je v turškem formatu, kot je "1,234,56", ena serija je mesečna, druga pa četrtletna. Večino časa ekonomist ne porabi za analizo, temveč za pripravo podatkov za analizo. Tukaj je umetna inteligenca pravi pospeševalnik z nizkim tveganjem: predlaga korake čiščenja, piše pande (Pythonova knjižnica za obdelavo podatkov), kodificira standardne ekonomske transformacije. Toda ta enota ima tudi nespremenljivo pravilo: preberete vsako transformacijo, ki jo je napisala umetna inteligenca, in jo ročno preverite v vsaj enem opazovanju. Če je realni nominalni cikel na napačni podlagi, celotna analiza tiho propade.

Čiščenje: kakšne težave, kako jih rešiti?

Najpogostejši problemi v ekonomskih podatkih in njihova logika:

  • Nepopolno opazovanje. En mesec/četrtletje je prazno. Rešitev je odvisna od konteksta: če dejansko ne obstaja, ostane prazno; Če obstaja tehnična vrzel, se izvede skrbna interpolacija - vendar je meja med izdelavo tanka.
  • Zmeda enot in formatov. Besedilo "12.345.6" je treba pretvoriti v številko; milijon/milijarda mora postati dosleden.
  • Frekvenčno neujemanje. Če želite združiti mesečno in četrtletno serijo, se ena sešteje (od mesečne do četrtletne) – ali je povprečje, skupno ali ob koncu obdobja, je odvisno od narave kazalnika (razlik med stanjem/tokom).
  • Izstopajoče (ekstremne) vrednosti. Če opažanje močno odstopa: je to resničen dogodek (kriza, dvig cen) ali napaka v podatkih? Pred izbrisom se razume.
  • Poravnava datuma. Formati datumov in definicije obdobij različnih serij so sinhronizirani.
Pozor: Izpolnjevanje manjkajočih podatkov se zdi nedolžno, vendar je to gospodarna odločitev. Zapolnitev kriznega meseca s "povprečjem sosednjih mesecev" pomeni izbris te krize iz analize. Preden izpolnite, vprašajte "zakaj obstaja ta vrzel?" Odgovorite na vprašanje.

Standardne ekonomske transformacije

Transformacije in njihove definicije v vsakdanjem repertoarju ekonomista:

  • Nominalno → Realno. Prilagoditev za vpliv na ceno: realna vrednost = nominalna vrednost / indeks cen × 100. Bazno leto deflatorja (prilagoditveni indeks) določa osnovo rezultata.
  • Indeksiranje. Preoblikovanje serije tako, da je izbrano obdobje = 100; Uporaben je za primerjavo serij različnih velikosti.
  • Stopnja rasti. Letno: (isto obdobje v tem obdobju / lani − 1) × 100. Periodična in letna stopnja sta različni stvari; Zmeda je pogosta napaka.
  • Sezonski popravek. Čiščenje rednih sezonskih učinkov (poletni turizem, počitnice); Neobdelane serije in desezonirane serije pripovedujejo različne zgodbe.
  • Drseče povprečje. Zgladi hrup in naredi trend viden.
  • Logaritmi in razlike. Preučiti dinamiko rasti in stacionarnost (poglobljeno v enoti časovne vrste).
Nasvet: Pri vsaki pretvorbi boste vprašani "kaj se je zgodilo z enoto in bazo?" vprašaj. Osnova realne serije je osnova deflatorja; Osnova indeksirane serije je obdobje, ki ga izberete. Če si to zapišete, preprečite prihodnje napake.

Raziskovalna analiza podatkov (EDA)

Podatke je potrebno prepoznati pred vnosom v model. Raziskovalna analiza podatkov (EDA) vključuje: sumarno statistiko (srednja vrednost, mediana, standardni odklon, min-max), obliko porazdelitve, potek skozi čas, izstopne vrednosti in korelacijo med serijami. AI hitro ustvari kodo za te korake; Vaša naloga je prebrati rezultat z ekonomskim očesom: "Ali je to povprečje razumno? Ali je ta korelacija naključje ali znano razmerje?"

Pozor: korelacija je tukaj samo sredstvo identifikacije, ne dokaz vzročne zveze. Dejstvo, da se dve vrsti gibljeta skupaj (npr. prodaja sladoleda in utopitve – obe sproži poletje), ne pomeni nujno, da ena vodi k drugi. To razlikovanje bomo poglobili v 7. enoti.

trije mini kovčki

Primer 1 – Napačna osnova deflatorja. Analitik je dal umetni inteligenci napisati kodo za realizacijo serije plač. Koda je delovala, rezultat je bil videti razumen — vendar je analitik ročno izračunal 2020 v koraku IZRAČUN, a ni delovalo. Problem: umetna inteligenca je uporabila deflator z bazo 2003=100 in zahtevala serijo plač s cenami iz leta 2015; Osnove so bile nasprotujoče. Koda je bila popravljena z enim popravkom vrstice, celotna serija je padla na svoje mesto.

2. primer – Napaka tihe glasnosti. Institucija je zmanjšala podatke o izvozu v tisoč dolarjev in uvozu v milijonih dolarjev. Ko je umetna inteligenca odstranila dva za "zunanjetrgovinsko bilanco", je bil rezultat absurden primanjkljaj. Pogled min-max v EDA je razkril napako: vrstni red velikosti obeh nizov se razlikuje za faktor 1000. Ko je bila enota izenačena, je bilo ravnotežje pravilno.

Primer 3 – Nebrisanje izstopajoče vrednosti. En mesec v nizu je bil izjemno nizek. AI je predlagal "outlier, očistimo ga". Analitik je raziskal: proizvodnja se je tisti mesec dejansko ustavila zaradi naravne katastrofe. Vrednost je bila resnična; Če bi ga izbrisali, bi popačili zgodovino. Namesto črtanja je bila opomba pod črto. "Jasnega" priporočila AI niso slepo upoštevali.

Tabela za preverjanje pretvorbe

Pretvorba

formula esenca

ročna kontrolna točka

realizacija

nominalni / cenovni indeks × 100

Osnova deflatorja = osnova izida?

letna rast

(t / t-12 mesecev − 1)×100

Izračunajte obdobje na papirju

indeksiranje

niz/osnovno obdobje × 100

Ali je vrednost osnovnega obdobja 100?

Mesečno → četrtletno

tok: zbiranje / zaloga: konec obdobja

Pravilen način zbiranja?

drseče povprečje

povprečje zadnjega obdobja n

Je dolžina okna pravilna?

Štiri predloge za kopiranje

1) Načrt čiščenja:

Imam te neobdelane podatke: [stolpci in vzorčne vrstice]. Pripravite načrt čiščenja, da se pripravite na analizo: manjkajoča vrednost, težava z enoto/formatom, uskladitev datuma, poravnava frekvence, morebitni odstopanji. V enem stavku razložite, zakaj je vsak korak potreben. Ne pišite še kode; naj najprej potrdim načrt.

2) koda za čiščenje pand:

Napiši kodo pande v skladu z načrtom, ki sem ga odobril. Naj koda navede, kaj počne na vsakem koraku z vrstico za komentar; Natisne število vrstic in manjkajoče vrednosti po pretvorbi. Ne izbrišite na tihem nobene opazke; Prijavite vsako vrstico, ki jo izbrišete.

3) Realizacija (preverljivo):

Realizirajte to nominalno serijo z [indeks cen]. Jasno napišite bazno leto deflatorja, ko ga uporabljate; Določite, kaj je osnova dobljene serije. Pokaži mi račun korak za korakom za eno obdobje, da ga lahko ročno preverim.

4) Povzetek raziskovalne analize:

Napišite kodo raziskovalne analize za naslednje očiščene podatke: povzetek statistike, izris časovne vrste, skeniranje izstopajočih vrednosti in korelacijsko matriko. Pri razlagi rezultatov jasno povejte, da korelacije, ki jih najdete, niso VZROČNE, in naštejte 3 točke, ki me izstopajo.

Šibek poziv/močan poziv

Šibek poziv:

Počisti te podatke.

AI deluje s predpostavkami, ne da bi vedel, kaj naj očisti; Lahko izbrišete opazovanja, spremenite enote, ne boste opazili.

Močan poziv:

V teh mesečnih zunanjih trgovinskih podatkih je izvoz v "tisoč USD", uvoz pa v "milijonih USD". Oba naj bosta enaka v "milijonih USD", označite manjkajoče mesece, vendar NE IZPOLNITE, datume poravnajte na konec meseca. Natisnite, na koliko vrstic vpliva vsak korak; tiho ne izbriši nobene vrstice. Nato prikaži stanje za en mesec na način, da ga lahko ročno preverim.

Pogoste napake

  • Zagon kode za pretvorbo brez branja. Napačna osnova/enota tiho pokvari celotno analizo.
  • Vnašanje manjkajočih podatkov brez razmišljanja. Brisanje obdobja krize/katastrofe s povprečjem.
  • Samodejno zavrzi izstopajoče vrednosti. Zamenjati resnični dogodek za podatkovno napako.
  • Zamenjuje sezonsko in letno rast. Oba sta različnih velikosti.
  • Nepravilno kombiniranje frekvenc. Zbiranje serij zalog in njihova obdelava kot tok.
  • Zamenjati korelacijo v EDA za vzročnost. Zamenjajte orodje za prepoznavanje kot dokaz.

Če povzamem

Čiščenje in preoblikovanje podatkov je nevidnih, a odločilnih 80 odstotkov ekonomske analize. Umetna inteligenca dramatično pospeši to mehansko delo; vendar je na vas, da preberete vsak korak čiščenja in vsako transformacijo ter ročno preverite vsaj eno opazovanje. Odločitve o osnovi, enoti, frekvenci in odstopanjih deflatorja so ekonomske odločitve in jih ni mogoče slepo prepustiti umetni inteligenci. Raziskovalna analiza uvaja podatke, vendar korelacija ni vzročna zveza.

Aplikacijska naloga

Prenesite dejansko neobdelano serijo (npr. mesečni CPI in nominalno serijo plače/dohodka). Ustvarite načrt čiščenja s 1. predlogo, ustvarite kodo z 2. predlogo in realizirajte serijo s 3. predlogo. Nato izračunajte realno vrednost posameznega obdobja na papirju in jo primerjajte z rezultatom umetne inteligence. Če najdete neujemanje, diagnosticirajte in popravite njegov vir (osnova/enota) ter zabeležite napredek.

kontrolni seznam

  • [ ] Pregledal sem in odobril načrt čiščenja, preden je bila koda napisana.
  • [ ] Umetna inteligenca mi je sporočila, da je vsako vrstico izbrisal/spremenil; Brez tihega brisanja.
  • [ ] Pri izpolnjevanju manjkajočih podatkov se lahko vprašate "zakaj je prazno?" Odgovoril sem na vprašanje.
  • [ ] Raziskal sem, ali je odstopanje resničen dogodek ali podatkovna napaka.
  • [ ] Pri realizaciji sem preveril, da se osnova deflatorja in osnova rezultata ujemata.
  • [ ] Ročno sem preračunal pretvorbo vsaj enega obdobja.
  • [ ] Korelacij v EDA nisem predstavil kot vzročne zveze.