Dataset

Zde je prvních 10 řádek

Úkol 0.

Načtěte dnešní cvičný datový soubor.

Úkol 1.

Upravte předchozí kód, aby umožňoval indexaci pomocí názvů sloupců.

Úkol 2.

Nahraďte NaN v datech průměrem hodnot daného sloupce. Bez cyklů, jen za pomocí indexace.

Úkol 3.

Pro každou unikátní hodnotu z prvního sloupce spočítejte průměr jejich hodnot v druhém sloupci.

Úkol 4.

Vykreslete graf, který bude jako sloupce zobrazovat četnosti hodnot z prvního sloupce. A lineplot, který zobrazí průměrné hodnoty z předchozí úlohy.

Bonusová 0

Nechť máme body dané vektory x a y, aproximujte tuto funkci přímkou neboli použijte pro popis bodů Lineární regresi.

Jelikož pracujeme jen ve 2D, lze přímku popsat jako y = ax + b. Lineární regresi si nepište, v numpy je funkce np.linalg.lsts().

V matplotlib vykreslete všechny body a výslednou přímku.

Z teorie do praxe

Úkol 5.

Navrhněte reprezentaci fronty v poli, která bude pracovat v konstantním čase. Můžete předpokládat, že předem znáte horní odhad počtu prvků ve frontě.

Omezené pole budeme simulovat np.empty((N,)) a pak očekávejte na vstupu posloupnost řádků:

Úkol 6.

Navrhněte algoritmus, který zkontroluje správné uzávorkování aritmetického výrazu s více druhy závorek. Použijte datovou strukturu standardní knihovny například z collections.