Andmeteaduse eelteadmised käsurea vaates
Loogika
Kui räägitakse andmeteaduse eelteadmistest, siis tavaliselt mõeldakse vähemalt neid plokke:
- programmeerimine, eriti Python
- andmebaasid, SQL ja relatsiooniline mõtteviis
- failivormingud nagu
CSV,JSONjaXML - statistika, tõenäosusteooria ja matemaatiline mõtlemine
Käsurida ei asenda neid oskusi, kuid aitab neid omavahel siduda.
Just siin on käsurea suur väärtus:
- näed kiiresti, mis failid sul üldse on
- saad kontrollida andmete kuju enne suurema keskkonna avamist
- saad teha väikseid filtreid, loendusi ja ümberkujundusi
- õpid töövoogu, mis on hiljem kasulik ka Pythonis, SQL-is ja Dockeris
Kiirülevaade
Eesmärk on siduda käsurida andmeteaduse eelteadmistega: mitte õpetada kogu statistikat või Pythonit, vaid näidata, kuidas andmete kuju ja töövoog nähtavaks teha.
| Teema või tööriist | Milleks | Mida praktikas näed |
|---|---|---|
| programmeerimine | korda andmetöötlussamme | skriptid ja korduvad käivitused |
| SQL ja andmebaasid | struktureeri ja küsi andmeid | tabelid, võtmed ja päringud |
| failivormingud | määra, kuidas andmeid lugeda | CSV read, JSON puud, XML märgendid |
| matemaatika ja statistika | anna tulemustele sisu | analüüs, mida käsurida üksi ei asenda |
head, column, jq, wc, sqlite3 | tee esimene kontroll | faili kuju, read, veerud ja mahud |
| Python, SQL, notebook-keskkond | tee põhjalikum analüüs | suurem töövoog pärast esmast kontrolli |
Tüüpilised algaja vead
- arvatakse, et andmeteadus algab kohe suure mudeli või teegiga
- minnakse otse keerukasse analüüsi enne, kui andmefaili kuju on kontrollitud
- alahinnatakse failivormingute ja töövoo korrastatuse tähtsust
See õpik katab tugevamalt:
- käsurea loogika
- failide ja voogude töötluse
- Pythoni keskkonnad
- SQLite'i ja SQL-i alguse
- arendustöövoo, Giti ja Dockeri
See õpik ei püüa eraldi õpetada põhjalikult:
- statistikat
- tõenäosusteooriat
- lineaaralgebrat
R-i
Kõige tavalisemad vajadused
Programmeerimine
Andmetöö juures tähendab see sageli:
- väikest automaatikat
- andmete lugemist failist
- tulemuste salvestamist
- skriptide korduvat käivitamist
See tuleb kõige rohkem välja Pythoni, shelliskriptide ja töövoogude peatükkides.
Andmevormingud
Sageli ei ole probleem statistikas, vaid selles, et:
- fail on vales vormingus
- veerud ei ole seal, kus arvasid
- kirjed on pesastatud
- andmed on teksti sees, mitte tabelina
Seetõttu on CSV, JSON ja XML mõistmine väga praktiline baasoskus.
SQL ja relatsiooniline mõtteviis
SQL ei tähenda ainult „käsku andmebaasile“, vaid ka kindlat andmemudelit.
Kasulikud põhiküsimused on:
- mis on tabel
- mis on rida ja veerg
- mis on primaarvõti
- kuidas kaks tabelit omavahel seotakse
Kui see loogika on olemas, on ka keerulisemad päringud palju vähem müstilised.
Statistika ja matemaatiline mõtlemine
Seda osa ei saa käsurea või SQL-iga asendada.
Tööjaotus on järgmine:
- käsurida aitab andmeid ette valmistada
- Python või
Raitab neid töödelda - statistiline mõtlemine aitab tulemusi mõista
Kõik kolm on eri asjad.
Näited
Tüüpiline väike andmetöö võib kulgeda nii:
- vaata faili esimesi ridu
- kontrolli, mis väljad seal on
- tee lihtne filtreerimine või loendus
- pane andmed SQLite tabelisse
- tee esimene SQL-päring
- loe tulemus Pythoniga sisse
Vastav töövoog võib olla:
fail -> head/less/grep -> column/cut/tr -> sqlite3 -> python3
Seetõttu on käsurida andmeteaduse alguses kasulik:
- see aitab väikeste sammudega kiiresti ülevaate saada
- see ei sunni kohe suurt keskkonda avama
- see muudab veaallikad nähtavamaks
Minitest
- Nimeta neli plokki, mida andmeteaduse eelteadmistena kõige sagedamini mainitakse.
- Selgita ühe lausega, miks
CSV,JSONjaXMLei ole sama asi. - Selgita ühe lausega, miks SQL ja statistika ei ole asendatavad oskused.
- Pane kirja üks väike töövoog, kus kasutaksid nii käsurida, SQLite'i kui Pythonit.
Peatüki täisspikker
Edasijõudnu
Eesmärk
andmeteaduse stardis ei piisa ühest tööriistast; vaja on korraga failivormingute tunnetust, SQL-i mõtteviisi, programmeerimist ja statistilist mõtlemist.
Põhikujud
fail -> head/less -> column/jq -> sqlite3 -> python3alusta väikese vaatusega- Pythoni
venvprojekti töölaud - CSV, JSON ja XMLandmete kuju
- SQLite ja Pythonesimene andmebaas
- Teksti teisendamineväiksed filtrid
- Vood ja tabelidkoondamine
Põhiteljed
programmeeriminekorduv töö loogikaksSQLküsi ja seo andmeidvormingudCSV, JSON, XMLstatistikaanna tähendus