Základy programování v jazyce Python Závěrečná Lekce: moduly/balíky/knihovny Dnes budeme potřebovat balík pandas otevřete si terminál / konzoli / příkazový řádek a napište: # pip install pandas Měli byste vidět: Moduly - Opravdu potřebujeme znovu vynalézat kolo? Kdy to zkoušet sami? "Procvičování bystří Vaši mysl." 練習 Správně zvolený nástroj Vám usnadní práci a dovede Vás rychle k cíli. Pokud Vám ale není jasné, jak s ním pracovat, cvičení může pomoct. A kdy radši ne? Stůjme na ramenou obrů kouzelné slůvko import https://xkcd.com/353/ import pandas pandas.read_csv() důležitý operátor "tečka", čteme jako "z modulu pandas vytáhni a použij metodu read_csv()". Tečky můžeme i řetězit, např.: pandas.Series.from_csv() Dataset - výška sněhu v Brně-Tuřanech od roku 1961 Zkusme si tedy znovu vynalézt kolo: jak načíst textový soubor? Stáhněte si data ve formátu csv. Přichází čas pro pandas! Vygooglujte si jak pomocí pandas načíst csv soubor. Přichází čas pro pandas! Vygooglujte si jak pomocí pandas načíst csv soubor. A teď cvičení - který měsíc byla v Tuřanech nejvyšší sněhová pokrývka? Spočítejte jako průměr ze všech dní daného měsíce. A hodně googlujte - pandas se používá úplně jinak než asi čekáte. Některé užitečné vestavěné moduly (netřeba instalovat) ● collections - užitečné datové struktury ● copy - funkce na kopírování struktur ● csv - otevírání a zapisování čárkou oddělených souborů (comma-separated values) ● datetime - práce s časovými údaji ● glob - práce s mnoha soubory ● os - funkce operačního systému (získání současné cesty, práce se složkami) ● random - (pseudo)náhodná čísla ● re - regulární výrazy ● shutil - práce se soubory (kopírování, atd...) Užitečné moduly - práce s daty a grafení ● pandas (statistika, data munging/wrangling) ● numpy (rychlé numerické operace) ● scipy (vědecké výpočty, lineární algebra, diferenciální rovnice, zpracování signálu/obrazu, interpolace, integrace...) ● matplotlib (grafická prezentace výsledků) ● sympy (symbolická matematika - počítá za Vás derivace, integrály, diferenciální rovnice, upravuje polynomy...) Co jsme neprobrali a mělo by Vás zajímat (myslíte-li to s programováním vážně…) ● třídy (classes) ● výjimky (exceptions) ● tvorba vlastních modulů, setuptools ● testování (testing) ● nástroje funkcionálního programování (functional programming) Navazující kurz - Python Pro fyziky - PřF:F4500 Výuka je vedena formou work-shopů, tedy střídání přednášek a praktických úkolů. Výběr témat je rozdělen mezi několik osob. Po úspěšném ukončení by měl student být schopen efektivního zpracování úlohy (praktika, bakalářské či diplomové práce) v Pythonu včetně grafů, obrázků či tabulek. V rámci předmětu budeme řešit například: ● Zpracování osciloskopických dat pomocí základních kontejnerů. ● Úvod do tříd . ● numpy + matplotlib - jak na fyzikální praktikum. ● Spektroskopická data - pokročilé numpy. ● Regrese ● Pohyb částic v elektromagnetických polích. ● Databáze. ● Úvod do strojového učení. ● Ovládání dalekohledu počítačem.