Seminární skupiny 03, 04, 05 a 06 - cvičící J. Plhák

Týden 13

Domácí úkol 6 - Zpracování textu a obrázků  - toto zadání platí pouze pro seminární skupiny 03, 04, 05 a 06 (cvičící Jaromír Plhák) 

1 Zpracování textu

Stáhněte si soubor jmena.csv (odkaz níže) a vytvořte funkce, které vypíší následující statistiky (v závorkách jsou uvedeny parametry, které funkce musí mít - může jich však obsahovat více):
  • a) Nalezněte a vypište n nejpopulárnějších jmen pro daný rok (n, year)
  • b) Nalezněte a vypište rok, kdy bylo dané jméno nejpopulárnější (name)
  • c) Nalezněte a vypište mezi kterými lety došlo pro dané jméno k největšímu vzrůstu popularity (name)
  • d) Nalezněte a vypište mezi kterými lety došlo pro libovolné jméno k největšímu procentnímu poklesu popularity. Uvažujte jen zavedená jména, která byla dávána alespoň m-krát (min_occurence)
  • e) Nalezněte a vypište pro každý rok, které jméno zažilo největší nárust popularity dle počtu výskytů.
  • f) Libovolnou statistiku odlišnou od předchozích. Detailně ji popiště pomocí komentářů u dané funkce.
  • g) Libovolnou statistiku odlišnou od předchozích. Detailně ji popiště pomocí komentářů u dané funkce.

2 Zpracování obrázků
  • a) Napište funkci, která vykreslí následující obrázek bitmapova_grafika_waves_square.png (odkaz níže). Parametrem je velikost obrázku, počet vln a strana čtverce, jehož střed je ve středu obrázku. Viz sbírka - úkol 12.1.10
  • b) Vezměte obrázek bitmap.jpg (odkaz níže) a proveďte jeho rozmlžení. Úroveň rozmazání je na vás, nicméně mělo by jít stále poznat, co je na obrázku zobrazeno.

Poznámky:
  • Je možné si vytvářet pomocné funkce (na načítání dat apod.)
  • Pracujte se souborem efektivně, tj. načtěte si z něj data do vhodné datové struktury (pokud bude každá funkce znovu načítat data ze souboru, budete za to náležitě "odměněni").
  • Názvy funkcí (a jejich parametrů) by měly odpovídat tomu, co dělají
  • Ošetřujte vstupní parametry funkcí - pokud bude chtít uživatel data například pro rok 2020, tak to jistě nebude možné.
  • Zavolejte každou funkci právě jednou, a to v pořadí dle zadání (tj. nejdříve zavoláte funkci, která řeší úlohu 1a), pak 1b) atd. Volání všech funkcí proveďte až na konci kódu.
  • Není nutné načítat vstupy od uživatele, parametry funkcí můžete při volaní zvolit dle libosti.
  • Bonusové body lze získat za zpracování velmi zajímavých (a komplexních) statistik v rámci úkolů 1f) a 1g)
Odevzdání:
  • Deadline 27. 12. v 23:59.
  • Odevzdejte jediný soubor homework06.py
  • Odevzdávárny:
    • Skupina 3 - https://is.muni.cz/auth/el/1433/test/PB223/ode/ode_65131781/65131801/
    • Skupina 4 - https://is.muni.cz/auth/el/1433/test/PB223/ode/ode_65131783/65131815/
    • Skupina 5 - https://is.muni.cz/auth/el/1433/test/PB223/ode/ode_65131786/65131830/
    • Skupina 6 - https://is.muni.cz/auth/el/1433/test/PB223/ode/ode_65131787/65131851/
Následující