Към съдържанието
wannacode

Добре дошъл

Накратко: Анализът на данни е пътят от въпроса до отговора: зареждане, почистване, сметки, графики и проверка, тук с Python, pandas и matplotlib направо в браузъра.

Проблем

Числото е вярно. Решението е грешно

Магазинът вижда, че оборотът през декември е паднал десет пъти спрямо октомври. Управителят спира рекламата, сменя доставчика и намалява цените. Месец по-късно се оказва, че през октомври двама клиенти са направили големи поръчки за офиса си. Декември е бил обикновен месец.

Числото в таблицата е било вярно. Грешно е било какво следва от него. Анализът на данни е точно това: да отговориш на въпрос с данни така, че на отговора да може да се вярва.

Идеята

Пътят на анализа

Всеки анализ минава през едни и същи стъпки, а курсът е подреден по тях:

  1. Въпросът. Какво трябва да реши някой с отговора? „Защо оборотът падна“ е въпрос. „Анализирай продажбите“ не е.
  2. Данните. Кои таблици, от кога, какво значи един ред.
  3. Почистване. Празни клетки, дубликати, „1,60 €“ като текст, грешни дати.
  4. Разглеждане. Таблици, групи и графики: какво има в данните.
  5. Изводът. Истински ли е спадът, или е шум? Причина ли е, или съвпадение?
  6. Разказът. Три изречения, една графика и границите на отговора.

Ето накъде отиваш: оборотът на магазина по месеци, от суровите таблици до графиката. Натисни „Изпълни“:

Pythonданни: таблиците на магазина

Кодът ще ти е ясен ред по ред в модула „Подреждане на данни“. Графиката обаче вече задава въпрос: месеците скачат силно. Спад ли е декември, или шум? Отговорът е в модула за статистика.

Идеята

Пясъчникът

Кодът в уроците е истински Python и върви в браузъра ти. Първото пускане сваля Python (около 13 MB) и после е в кеша. Пробвай, после смени цените и пусни пак:

Pythonданни: таблиците на магазина
  • Ctrl+Enter (⌘+Enter на Mac) пуска кода, а „Върни кода“ връща примера. Tab слага отстъп.
  • Изходът е като в бележник: всичко от print, а накрая стойността на последния ред. Таблиците излизат като таблици, а графиките като картинки.
  • Грешката е обяснена: първо с думи и с номера на реда, а под нея е оригиналът на Python, за да го познаеш, когато го видиш на своя компютър.
  • Всяко пускане започва наново. Променливите от предишното пускане ги няма, както ако пуснеш целия бележник отначало.
  • Мрежа няма. Данните са файловете до кода: таблиците на магазина от курса по SQL, в евро.
  • Код, който не свършва за 10 секунди (безкраен цикъл), се спира, без страницата да замръзне.

Идеята

Модулите

  • NumPy: масиви и сметки върху хиляди числа без for.
  • Таблици с pandas: избиране, филтриране, нови колони, типове и липсващи стойности.
  • Подреждане на данни: групи, съединяване на таблици, широко и дълго, дати, мръсни данни.
  • Графики: коя графика за какъв въпрос и как графика лъже.
  • Статистика за решения: колко шумно е едно число, интервали, проверка на хипотези, A/B тест, корелация и причина.
  • Модели със scikit-learn: прогноза, класификация, изтичане на информация и честна проверка.
  • Проект: защо оборотът падна: целият път с данните на магазина.
По-точно, за любопитните

Анализ на данни се прави и на R (силен в статистиката) и на Julia (бърза за числени сметки). Индустрията е предимно на Python, затова курсът е на него. Идеите са едни и същи.

Идеята

Какво трябва да знаеш

От Python ти трябват списъци, речници, for, функции и ламбди: курсът по Python до „Колекции“. SQL помага, но не е задължителен: групирането и съединяването се учат наново, тук с pandas.

В браузъра не трябва нищо. За своя работа ти трябват Python и JupyterLab: бележникът, в който кодът е на клетки, а изходът е под всяка. С uv проектът се прави така:

Терминал
uv init shop-analysis
cd shop-analysis
uv add pandas matplotlib scikit-learn jupyterlab
uv run jupyter lab

Без uv работи и обикновената виртуална среда:

Терминал
python -m venv .venv
source .venv/bin/activate
pip install pandas matplotlib scikit-learn jupyterlab
jupyter lab

На Windows втората команда е .venv\Scripts\activate. VS Code също отваря бележници (файловете .ipynb) с разширението Jupyter. Тези команди не се пускат тук.

Тест

Провери се

1. Кое е първото нещо в анализа на данни?
2. Кодът в пясъчника вика pd.read_csv("https://example.com/sales.csv"). Какво става?
3. Оборотът през декември е 22,70 €, а през октомври беше 255 €. Какво е честното заключение?

Създаден от Иво Гергов като част от кампанията на Evo Tech за достъпно обучение по програмиране ·