practise
projekt: Zaawansowana Analiza Danych (EDA) ⭐⭐⭐
Wybierz publiczny zbiór danych (np. z Kaggle, UCI ML Repository lub OpenML). Wykonaj kompletną eksploracyjną analizę danych (EDA):
- Wczytaj dane do Pandas DataFrame.
- Wyświetl podstawowe statystyki i informacje o danych (
.info()
,.describe()
). - Zbadaj brakujące wartości i zdecyduj, jak je obsłużyć.
- Przeanalizuj rozkład zmiennych (histogramy, wykresy pudełkowe, statystyki opisowe).
- Wykonaj wizualizacje (wykresy rozrzutu, wykresy słupkowe, wykresy grupowe, wykresy dla zmiennych kategorycznych).
- Zidentyfikuj potencjalne outliery i nietypowe obserwacje.
- Podsumuj najważniejsze wnioski z analizy.
Wskazówki:
- Dokumentuj każdy krok w notatniku Jupyter lub pliku Markdown.
- Staraj się, by analiza była czytelna i powtarzalna (reproducibility!).
- Zadbaj o przejrzystość kodu i opisów.
Cel: Przećwicz samodzielną analizę rzeczywistych danych, łącząc wszystkie poznane narzędzia (Python, NumPy, Pandas, Matplotlib, Seaborn, reproducibility).
1. Python – podstawy
- Napisz funkcję, która przyjmuje listę liczb i zwraca listę z kwadratami tych liczb.
- Zaimplementuj prostą grę w zgadywanie liczby (komputer losuje liczbę 1–100, użytkownik zgaduje).
- Stwórz klasę
Student
z polami: imię, nazwisko, oceny (lista). Dodaj metodę liczącą średnią ocen.
2. NumPy
- Stwórz tablicę NumPy z 20 losowymi liczbami całkowitymi z zakresu 0–100.
- Oblicz średnią, medianę i odchylenie standardowe tej tablicy.
- Zastosuj maskowanie: wybierz tylko liczby większe od 50.
- Zmień kształt tablicy na 4x5.
3. Pandas
- Wczytaj plik CSV z danymi (np. tutaj).
- Wyświetl podstawowe statystyki (
.describe()
). - Wyczyść dane z brakujących wartości.
- Posortuj dane według wybranej kolumny.
- Zgrupuj dane i policz średnią dla każdej grupy.
4. Matplotlib & Seaborn
- Narysuj wykres liniowy wybranej funkcji matematycznej (np.
y = sin(x)
). - Stwórz wykres słupkowy z danymi o sprzedaży (wymyśl dane).
- Załaduj dane z
sns.load_dataset('tips')
i narysuj wykres rozrzutu (scatterplot
). - Stwórz macierz korelacji i narysuj ją jako heatmapę.
5. Reproducibility
- Ustaw seed dla losowości w NumPy i Pythonie.
- Zapisz wszystkie zależności projektu do pliku
requirements.txt
. - Pracuj w środowisku wirtualnym i dokumentuj kroki analizy w pliku README.