Enhet 3 / 11

Datarensning, transformation och utforskande analys (med stöd för Python/pandas)

Vinster:

  • Förmåga att rensa rå ekonomisk data (saknade observationer, enhetsförvirring, frekvensfel) och göra den redo för analys med hjälp av artificiell intelligens
  • Möjlighet att skriva ut standardmässiga ekonomiska transformationer som real-nominell konvertering, indexering, tillväxttakt, säsongsjustering som kod till artificiell intelligens och verifiera dem manuellt
  • Förmåga att känna igen data genom utforskande dataanalys (sammanfattande statistik, distribution, extremvärden, korrelation) och kritiskt läsa sammanfattningar av artificiell intelligens

Ekonomisk data är sällan redo för analys. I en tabell du laddat ner från TURKSTAT saknas några månader, en kolumn kommer som text med tusen parenteser, växelkursen är i turkiskt format som "1.234,56", en serie är månadsvis och den andra är kvartalsvis. Det mesta av ekonomens tid går inte åt till analys, utan på att göra data redo för analys. Det är här AI är en verklig lågriskaccelerator: den föreslår saneringssteg, skriver pandas (Pythons databehandlingsbibliotek), kodifierar ekonomiska standardtransformationer. Men den här enheten har också en oföränderlig regel: Du läser varje transformation skriven av artificiell intelligens och verifierar den manuellt i minst en observation. Om den real-nominella cykeln är på fel fot, förfaller hela analysen tyst.

Rengöring: vilka problem, hur löser man dem?

De vanligaste problemen i ekonomisk data och deras logik:

  • Ofullständig observation. En månad/kvartal är tom. Lösningen beror på sammanhanget: om den inte faktiskt existerar lämnas den tom; Om det finns en teknisk lucka görs noggrann interpolering - men gränsen mellan tillverkning är tunn.
  • Förvirring av enheter och format. Texten "12.345.6" måste konverteras till ett tal; miljoner/miljard borde bli konsekvent.
  • Frekvensfel överensstämmer. För att kombinera en månads- och kvartalsserie, aggregeras en (månadsvis till kvartalsvis) — om det är genomsnittligt, totalt eller slutet av perioden beror på indikatorns karaktär (stock/flödesskillnad).
  • Avvikande (extrema) värden. Om en observation avviker vilt: är det en verklig händelse (kris, prishöjning) eller ett datafel? Det förstås före radering.
  • Datumjustering. Datumformat och perioddefinitioner för olika serier synkroniseras.
Observera: Att fylla i saknad data verkar oskyldigt, men det är ett ekonomiskt beslut. Att fylla en krismånad med "genomsnittet av närliggande månader" innebär att den krisen tas bort från analysen. Innan du fyller i, fråga "varför finns denna lucka?" Svara på frågan.

Standard ekonomiska transformationer

Transformationer och deras definitioner i en ekonoms dagliga repertoar:

  • Nominell → Real. Justering för prispåverkan: verkligt värde = nominellt värde / prisindex × 100. Basåret för deflatorn (justerande index) bestämmer basen för resultatet.
  • Indexering. Omskalning av en serie så att en vald period = 100; Det är användbart för att jämföra serier av olika storlekar.
  • Tillväxttakt. Årlig: (samma period denna period / förra året − 1) × 100. Periodisk och årlig takt är olika saker; Att förvirra är ett vanligt misstag.
  • Säsongskorrigering. Rening av regelbundna säsongseffekter (sommarturism, semester); Råserien och de säsongrensade serierna berättar olika historier.
  • Glidande medelvärde. Jämnar ut bruset och gör trenden synlig.
  • Logaritmer och differenser. Att undersöka tillväxtdynamik och stationaritet (kommer att fördjupas i tidsserieenheten).
Tips: Med varje konvertering kommer du att få frågan "vad hände med enheten och basen?" be. Basen för den verkliga serien är basen för deflatorn; Basen för den indexerade serien är den period du väljer. Att hålla detta nedskrivet förhindrar framtida misstag.

Utforskande dataanalys (EDA)

Det är nödvändigt att känna igen data innan den läggs in i modellen. Exploratory data analysis (EDA) inkluderar: sammanfattande statistik (medelvärde, median, standardavvikelse, min-max), fördelningens form, förlopp över tid, extremvärden och korrelation mellan serier. AI genererar snabbt koden för dessa steg; Ditt jobb är att läsa resultatet med ett ekonomiskt öga: "Är detta genomsnitt rimligt? Är detta samband en slump eller ett känt förhållande?"

Varning: Korrelation är bara ett sätt att identifiera här, inte bevis på orsakssamband. Det faktum att två serier flyttar ihop (t.ex. glassförsäljning och drunkning – båda utlösts av sommaren) tyder inte nödvändigtvis på att det ena leder till det andra. Vi kommer att fördjupa denna distinktion i enhet 7.

tre minifodral

Fall 1 — Felaktig deflatorbas. En analytiker lät den artificiella intelligensen skriva kod för att realisera löneserien. Koden fungerade, resultatet såg rimligt ut - men analytikern beräknade manuellt 2020 i BERÄKNA-steget och det fungerade inte. Problem: den artificiella intelligensen använde deflatorn med basen 2003=100 och begärde löneserien med 2015 års priser; Baserna var motstridiga. Koden reparerades med en enda rad fix, hela serien föll på plats.

Fall 2 — Tyst volymfel. En institution hade minskat exportdata i tusen dollar och import i miljoner dollar. När den artificiella intelligensen tog bort de två för "utrikeshandelsbalansen" blev resultatet ett absurt underskott. Min-max-vyn i EDA avslöjade felet: storleksordningen för de två serierna skilde sig med en faktor på 1000. När enheten väl utjämnats var balansen korrekt.

Fall 3 — Tar inte bort extremvärdet. En månad i en serie var utomordentligt låg. AI föreslog "outlier, let's clean it". Analytikern undersökte: produktionen hade faktiskt stoppats på grund av en naturkatastrof den månaden. Värdet var verkligt; Att ta bort det skulle förvränga historiken. Istället för radering, fotnoterades det. AI:s "tydliga" rekommendation följdes inte blint.

Konverteringsvalideringstabell

Konvertering

formel essens

manuell kontrollpunkt

förverkligande

nominellt / prisindex × 100

Deflatorbas = utfallsbas?

årlig tillväxt

(t / t-12 månader − 1)×100

Beräkna en period på papper

indexering

serie/basperiod × 100

Är basperiodens värde 100?

Månatligen→kvartalsvis

flöde: samla in / lager: slutet av perioden

Rätt insamlingsmetod?

glidande medelvärde

genomsnitt för senaste n perioden

Är fönsterlängden korrekt?

Fyra kopierbara mallar

1) Städningsplan:

Jag har denna rådata: [kolumner och exempelrader]. Kom med en städplan för att förbereda för analys: saknat värde, problem med enhet/format, datumjustering, frekvensjustering, möjliga extremvärden. Förklara i en mening varför varje steg är nödvändigt. Skriv inte kod ännu; låt mig bekräfta planen först.

2) rensningskod för pandor:

Skriv pandaskod enligt planen jag godkände. Låt koden indikera vad den gör vid varje steg med en kommentarsrad; Den skriver ut antalet rader och saknade värden efter konverteringen. Radera inte i tysthet någon observation; Rapportera varje rad du tar bort.

3) Realisering (verifierbar):

Realisera denna nominella serie med [prisindex]. Skriv tydligt basåret för deflatorn när du använder den; Ange vad basen för den resulterande serien är. Visa mig kontot steg för steg för en enskild period så att jag kan verifiera det manuellt.

4) Sammanfattning av utforskande analys:

Skriv explorativ analyskod för följande rensade data: sammanfattande statistik, tidsserieplot, extremavsökning och korrelationsmatris. När du tolkar resultaten, gör det klart att de korrelationer du hittar inte är ORSAKLIGA och ange 3 punkter som sticker ut för mig.

Svag prompt / Stark prompt

Svag uppmaning:

Rensa denna data.

AI agerar med antaganden utan att veta vad som ska rengöras; Du kan ta bort observationer, ändra enheter, du kommer inte att märka det.

Kraftfull uppmaning:

I denna månatliga utrikeshandelsdata är exporten i "tusen USD" och importen i "miljoner USD". Gör de två lika i "miljoner USD", markera de saknade månaderna men FYLL INTE, anpassa datumen till slutet av månaden. Skriv ut hur många rader som påverkas vid varje steg; radera inga rader tyst. Visa sedan saldot för en enda månad på ett sätt som jag kan kontrollera manuellt.

Vanliga misstag

  • Kör konverteringskoden utan att läsa den. Fel bas/enhet korrumperar tyst hela analysen.
  • Fyller i saknad data utan att tänka. Att radera kris-/katastrofperioden med genomsnittet.
  • Släng automatiskt extremvärden. Misstag en verklig händelse för ett datafel.
  • Förvirrande säsongsmässig och årlig tillväxt. De två är olika storlekar.
  • Kombinera frekvenser felaktigt. Samla in lagerserien och bearbeta den som ett flöde.
  • Misstar korrelationen i EDA för kausalitet. Misstag igenkänningsverktyget som bevis.

Sammanfattningsvis

Datarensning och omvandling är den osynliga men avgörande 80 procenten av ekonomisk analys. Artificiell intelligens påskyndar dramatiskt detta mekaniska arbete; men det är upp till dig att läsa varje saneringssteg och varje transformation och manuellt verifiera minst en observation. Deflatorbas, enhet, frekvens och extrembeslut är ekonomiska beslut och kan inte blint överlåtas till artificiell intelligens. Explorativ analys introducerar data, men korrelation där finns inget orsakssamband.

Applikationsuppgift

Ladda ner en faktisk råserie (t.ex. månatlig KPI och en nominell löne-/inkomstserie). Skapa en städplan med den 1:a mallen, få koden genererad med den 2:a mallen och realisera serien med den 3:e mallen. Beräkna sedan det verkliga värdet av en enskild period på papper och jämför det med resultatet av artificiell intelligens. Om du hittar en felmatchning, diagnostisera och korrigera dess källa (bas/enhet) och notera framstegen.

checklista

  • [ ] Jag granskade och godkände saneringsplanen innan koden skrevs.
  • [ ] Jag fick varje rad raderade/ändrade av den artificiella intelligensen. Ingen tyst radering.
  • [ ] När du fyller i saknade data kan du fråga "varför är den tom?" Jag svarade på frågan.
  • [ ] Jag undersökte om extremvärdet var en verklig händelse eller ett datafel.
  • [ ] I realiseringen verifierade jag att deflatorbasen och utfallsbasen matchar.
  • [ ] Jag räknade om omräkningen för minst en period manuellt.
  • [ ] Jag presenterade inte korrelationer i EDA som orsakssamband.