Kurs data science
Jak wejść do świata data science – Python, SQL, statystyka – plan nauki na 6 miesięcy?
Projekt-Plan
Dlaczego: Statystyka pozwala odróżnić rzeczywiste trendy od przypadkowego szumu w danych.
Jak:
- Skup się na rozdziałach dotyczących korelacji i prawdopodobieństwa.
- Rób notatki z pojęć: średnia, mediana, odchylenie standardowe.
- Zrozum, dlaczego korelacja nie oznacza przyczynowości.
Gotowe, gdy: Przeczytano całą książkę i sporządzono notatki z kluczowych definicji.
Dlaczego: Większość algorytmów Data Science zakłada, że dane mają rozkład normalny (krzywa Gaussa).
Jak:
- Naucz się obliczać Z-score, aby standaryzować dane.
- Zrozum, że 95% obserwacji mieści się w granicach dwóch odchyleń standardowych od średniej.
- Wykorzystaj darmowe kalkulatory online do wizualizacji rozkładu.
Gotowe, gdy: Potrafisz samodzielnie narysować krzywą Gaussa i opisać jej parametry.
Dlaczego: To kluczowa umiejętność przy testach A/B i sprawdzaniu istotności wyników biznesowych.
Jak:
- Zdefiniuj hipotezę zerową (H0) i alternatywną (H1).
- Zrozum, że p-value < 0.05 zazwyczaj oznacza wynik istotny statystycznie.
- Przeanalizuj błędy I i II rodzaju.
Gotowe, gdy: Rozwiązanie 5 zadań z testu t-Studenta na papierze lub w arkuszu.
Dlaczego: Anaconda to standardowe środowisko zawierające wszystkie potrzebne biblioteki do nauki danych.
Jak:
- Pobierz instalator ze strony anaconda.com.
- Uruchom 'Anaconda Navigator' i otwórz Jupyter Lab.
- Stwórz swój pierwszy plik .ipynb i przetestuj komendę print('Hello DS').
Gotowe, gdy: Środowisko działa poprawnie i wyświetla wynik kodu.
Dlaczego: Bez znajomości list i słowników nie będziesz w stanie przetwarzać danych wejściowych.
Jak:
- Przećwicz tworzenie list (list) i słowników (dict).
- Naucz się 'list comprehension' dla szybszego pisania kodu.
- Zrozum różnicę między krotką (tuple) a listą.
Gotowe, gdy: Napisanie skryptu, który filtruje listę słowników według określonego klucza.
Dlaczego: Pandas to najważniejsze narzędzie do pracy z tabelami (DataFrame) w Pythonie.
Jak:
- Skup się na metodach: .read_csv(), .head(), .info(), .describe().
- Opanuj filtrowanie wierszy i wybieranie kolumn.
- Naucz się łączyć tabele za pomocą .merge() i .concat().
Gotowe, gdy: Wczytanie dowolnego pliku CSV i obliczenie średniej wartości dla wybranej kolumny.
Dlaczego: Większość danych firmowych przechowywana jest w bazach SQL, a DBeaver to uniwersalny klient do ich obsługi.
Jak:
- Zainstaluj PostgreSQL lokalnie.
- Połącz się z bazą przez DBeaver.
- Zaimportuj przykładową bazę danych (np. 'DVD Rental' lub 'Northwind').
Gotowe, gdy: Połączenie z bazą danych zostało nawiązane.
Dlaczego: Łączenie tabel to podstawa pracy analityka, pozwalająca na budowanie pełnego obrazu danych.
Jak:
- Przećwicz INNER JOIN, LEFT JOIN i CROSS JOIN.
- Naucz się używać aliasów dla tabel i kolumn.
- Zrozum różnicę między WHERE (filtrowanie wierszy) a HAVING (filtrowanie grup).
Gotowe, gdy: Napisanie zapytania łączącego 3 tabele i zwracającego zagregowane wyniki.
Dlaczego: Exploratory Data Analysis (EDA) to proces zrozumienia danych przed budową modelu.
Jak:
- Pobierz zbiór 'Titanic' z Kaggle.
- Sprawdź braki danych (NaN) i zdecyduj, czy je usunąć, czy uzupełnić.
- Sprawdź korelacje między wiekiem, płcią a szansą na przeżycie.
Gotowe, gdy: Notebook z kompletną analizą brakujących danych i statystykami opisowymi.
Dlaczego: Dobry wykres wart jest więcej niż tysiąc wierszy w tabeli.
Jak:
- Użyj sns.heatmap() do wizualizacji korelacji.
- Stwórz histogramy rozkładu cech za pomocą plt.hist().
- Wykorzystaj boxploty do wykrywania wartości odstających (outliers).
Gotowe, gdy: Zestaw 5 różnorodnych wykresów opisujących zbiór danych.
Dlaczego: Regresja to fundament przewidywania wartości ciągłych (np. cen, sprzedaży).
Jak:
- Podziel dane na zbiór treningowy i testowy (train_test_split).
- Użyj klasy LinearRegression z biblioteki Scikit-learn.
- Oblicz błąd średniokwadratowy (MSE), aby ocenić model.
Gotowe, gdy: Model przewiduje wartości z błędem niższym niż średnia.
Dlaczego: Klasyfikacja pozwala przypisywać obiekty do kategorii (np. spam/nie-spam).
Jak:
- Wykorzystaj algorytm Random Forest Classifier.
- Zrozum pojęcie 'overfitting' (przeuczenie modelu).
- Wygeneruj 'Classification Report' (Precision, Recall, F1).
Gotowe, gdy: Model klasyfikujący z dokładnością (Accuracy) powyżej 75%.
Dlaczego: Własny projekt udowadnia, że potrafisz przejść przez cały proces: od danych do wniosków.
Jak:
- Wybierz temat, który Cię interesuje (np. analiza cen kryptowalut lub sportu).
- Pobierz dane, wyczyść je, przeprowadź EDA i zbuduj model ML.
- Opisz każdy krok w Jupyter Notebooku.
Gotowe, gdy: Gotowy, udokumentowany projekt w formacie .ipynb.
Dlaczego: GitHub to Twoja wizytówka dla rekruterów.
Jak:
- Stwórz nowe repozytorium.
- Napisz plik README.md zawierający: cel projektu, użyte technologie i główne wnioski.
- Dodaj screeny wykresów do opisu.
Gotowe, gdy: Link do repozytorium jest publiczny i czytelny.
Dlaczego: Rozmowy techniczne wymagają specyficznego przygotowania z algorytmów i logiki.
Jak:
- Przerób sekcję z SQL (zadania typu 'Medium').
- Powtórz definicje z zakresu statystyki i ML.
- Przygotuj odpowiedzi na pytania o Twoje projekty.
Gotowe, gdy: Rozwiązanie 20 przykładowych pytań rekrutacyjnych.