{
"cells": [
{
"cell_type": "markdown",
"id": "3c314785",
"metadata": {},
"source": [
"# Interaktivní vizualizace dat v Pythonu\n",
"## Instalace potřebných knihoven\n",
"\n",
"Každou buňku s kódem je možné spustit, když kliknete do ní a poté nahoře na tlačítko ▶, případně je možné použít tlačítko ▶▶ (to navíc restartuje kernel; poté spustí buňky jednu po druhé).\n",
"\n",
"Buňky v notebooku byste měli spouštět v pořadí, jak jsou v notebooku, protože buňky níže často pracují s výsledkem z buněk výše.\n",
"\n",
"Vedle buněk s kódem jsou zde buňky s markdownem (jako je tato); ty je možné editovat po poklepání (ale přirozeně v nich nelze nic spouštět).\n",
"\n",
"Pokud nefunguje spuštění dalšího kódu po spuštění a provedení instalace v první buňce, restartujte jádro z menu (Kernel / Restart kernel...)."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "5d145ee1",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Note: you may need to restart the kernel to use updated packages.\n"
]
}
],
"source": [
"%pip install -Uqq pandas openpyxl itables plotly statsmodels"
]
},
{
"cell_type": "markdown",
"id": "b1c1022d",
"metadata": {},
"source": [
"## Načtení dat\n",
"\n",
"Tato buňka načte data z excelového souboru, který jsme přiložili.\n",
"\n",
"Poté zobrazí několik prvních řádků.\n",
"\n",
"Na začátku knihovny je import knihovny `pandas`. Importujeme ji pod krátkým názvem `pd` a pak odkazujeme na její funkce, např. `pd.read_excel`.\n",
"\n",
"Data máme načtená v proměnné `data`. Jedná se o datový typ `pandas DataFrame`."
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "d6b1af33",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
" Rok bc promoce mgr promoce počet učitelů\n",
"0 1433 1.0 NaN NaN\n",
"1 1434 NaN NaN NaN\n",
"2 1435 3.0 NaN 12.0\n",
"3 1436 NaN NaN 12.0\n",
"4 1437 NaN NaN 12.0\n"
]
}
],
"source": [
"import pandas as pd\n",
"\n",
"# Načtení dat\n",
"file_path = \"Smahel_Alma.xlsx\"\n",
"data = pd.read_excel(file_path)\n",
"\n",
"# Zobrazení prvních řádků\n",
"print(data.head())\n"
]
},
{
"cell_type": "markdown",
"id": "8fc8b55f",
"metadata": {},
"source": [
"## Převod tabulky do dlouhého formátu (ze širokého)\n",
"\n",
"Plotly Express pracuje pouze s dlouhým formátem.\n",
"\n",
"Použijeme proto další funci z `pandas`, a to `pd.melt` Data zůstanou stejná, pouze se přeskupí.\n",
"\n",
"Přeskupená data jsou v proměnné `data_long`. Tu si níže zobrazíme."
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "4a200663",
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"\n"
],
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/html": [
"\n",
"\n",
"