**Wprowadzenie do Data Science i Pythona

W dzisiejszej lekcji wprowadzimy się w świat Data Science i poznamy podstawy języka Python, kluczowego narzędzia dla analityków danych. Nauczymy się również, jak skonfigurować i dostosować środowisko pracy, aby móc efektywnie pracować z danymi.

Learning Objectives

  • Zdefiniować termin Data Science i omówić jego zastosowania.
  • Zrozumieć podstawy języka Python i jego rolę w Data Science.
  • Zainstalować i skonfigurować środowisko pracy Python (Anaconda) oraz biblioteki.
  • Zapoznać się z podstawowymi strukturami danych w Pythonie (listy, słowniki).

Lesson Content

Czym jest Data Science?

Data Science to interdyscyplinarna dziedzina, która wykorzystuje metody naukowe, procesy, algorytmy i systemy do wydobywania wiedzy i wniosków z danych w różnych formach, zarówno ustrukturyzowanych jak i nieustrukturyzowanych. Data Science to połączenie wiedzy z zakresu matematyki, statystyki, informatyki i domenowej ekspertyzy. W skrócie: Data Science to 'nauka o danych', która pozwala nam przetwarzać duże ilości danych i wyciągać z nich wartościowe informacje.

Przykłady zastosowań Data Science:
* Reklama spersonalizowana: Rekomendacje filmów na Netflixie, produktów na Allegro.
* Przewidywanie: Prognozowanie pogody, przewidywanie ryzyka kredytowego.
* Automatyzacja: Rozpoznawanie obrazów, przetwarzanie języka naturalnego (chatbots, tłumaczenia).

Wprowadzenie do Pythona

Python jest popularnym, wszechstronnym i łatwym do nauczenia językiem programowania, który jest szeroko wykorzystywany w Data Science. Jest językiem interpretowanym, co oznacza, że kod jest wykonywany linia po linii. Python posiada bogatą bibliotekę narzędzi (np. NumPy, Pandas, Scikit-learn) dedykowanych do analizy i manipulacji danymi. To sprawia, że jest idealnym wyborem dla początkujących.

Dlaczego Python dla Data Science?
* Łatwość uczenia się: Prosta składnia i czytelny kod.
* Bogaty ekosystem bibliotek: Mnóstwo narzędzi dla analizy danych, uczenia maszynowego, wizualizacji itp.
* Szerokie wsparcie społeczności: Duża społeczność, wiele tutoriali i dokumentacji.
* Elastyczność: Możliwość wykorzystania w różnych dziedzinach.

Konfiguracja Środowiska Pracy (Anaconda)

Anaconda to dystrybucja języka Python, która ułatwia zarządzanie pakietami i zależnościami w Data Science. Zawiera popularne biblioteki (np. NumPy, Pandas, Matplotlib) i ułatwia tworzenie wirtualnych środowisk dla różnych projektów.

Kroki instalacji Anaconda:
1. Pobierz instalator Anaconda ze strony: https://www.anaconda.com/products/distribution
2. Uruchom instalator i postępuj zgodnie z instrukcjami. Zaznacz opcję dodania Anaconda do zmiennej środowiskowej PATH (ważne).
3. Po instalacji uruchom Anaconda Navigator. To graficzny interfejs, który umożliwia uruchamianie Jupyter Notebook, Spyder IDE i innych narzędzi.

Jupyter Notebook: To interaktywne środowisko, w którym można pisać i uruchamiać kod Pythonu, tworzyć notatki, wizualizacje i udostępniać wyniki analiz.

Uruchomienie Jupyter Notebook: W Anaconda Navigator kliknij na ikonę 'Launch' obok Jupyter Notebook. Zostanie otwarte w przeglądarce internetowej.

Podstawy Pythona: Struktury Danych

Zacznijmy od podstawowych struktur danych w Pythonie.

  • Listy: Uporządkowane kolekcje elementów, które mogą być różnych typów. Listy są zmienne (mutable).
    python lista = [1, 2, 3, "a", "b"] print(lista[0]) # Wyświetli 1 lista.append(4) # Dodaje element na końcu listy print(lista) # Wyświetli [1, 2, 3, 'a', 'b', 4]

  • Słowniki: Kolekcje par klucz-wartość. Słowniki są zmienne (mutable).
    python slownik = {"imie": "Jan", "wiek": 30} print(slownik["imie"]) # Wyświetli Jan slownik["zawod"] = "programista" # Dodaje nowy element print(slownik) # Wyświetli {'imie': 'Jan', 'wiek': 30, 'zawod': 'programista'}

Deep Dive

Explore advanced insights, examples, and bonus exercises to deepen understanding.

Rozszerzona Lekcja: Data Scientist — Rozwój Produkcji i DevOps (MLOps) - Dzień 1

Wspaniale! Już za nami wstęp do Data Science i Python. Dzisiaj zagłębimy się nieco bardziej w świat danych i narzędzi, które będą naszymi towarzyszami na tej ekscytującej drodze.

Deep Dive: Python i jego Filozofia (Pythonic Code)

Python jest nie tylko językiem programowania, to również pewien sposób myślenia. Podczas pisania kodu w Pythonie dążymy do tzw. "Pythonic code". Oznacza to, że piszemy kod czytelny, zwięzły i wykorzystujący pełny potencjał języka. Jednym z kluczowych elementów jest ZEN Pythona - zbiór zasad, które kierują dobrymi praktykami. Aby je poznać, wpisz w swojej konsoli Python: import this. Przykładowo, zasada "Explicit is better than implicit" (Jawne jest lepsze od domyślnego) przypomina nam o pisaniu kodu, który jest łatwy do zrozumienia bez ukrytych zależności.

Rozważmy przykład. Zamiast pisać:

            
                for i in range(len(my_list)):
                    print(my_list[i])
            
        

Lepiej napisać (bardziej Pythonic):

            
                for element in my_list:
                    print(element)
            
        

To nie tylko skraca kod, ale również sprawia, że jest bardziej zrozumiały dla innych programistów (i dla nas samych po jakimś czasie!). Pamiętajmy o tej filozofii podczas pisania kodu. Będzie to bardzo pomocne w przyszłości, szczególnie podczas pracy zespołowej.

Bonusowe Ćwiczenia

Ćwiczenie 1: Praca z Listami i Słownikami (List Comprehension)

Stwórz listę liczb od 1 do 10. Następnie użyj List Comprehension, aby stworzyć nową listę, która zawiera kwadraty tych liczb. Dodatkowo, stwórz słownik, gdzie kluczem będzie liczba, a wartością jej kwadrat.

                
                    # Przykład dla ułatwienia
                    numbers = [i for i in range(1, 11)] # Lista liczb od 1 do 10
                    squared_numbers = [number**2 for number in numbers] # Kwadraty liczb z listy 'numbers'
                    print(squared_numbers)
                
            

Ćwiczenie 2: Iteracja i Warunki (if/else)

Masz daną listę imion. Napisz kod, który iteruje po tej liście i wypisuje "Imię męskie" jeśli imię kończy się na "o" i "Imię żeńskie" w przeciwnym wypadku. Skorzystaj z pętli for i instrukcji if/else.

                
                    imiona = ["Jan", "Anna", "Piotr", "Maria", "Krzysztof"]
                    # Twój kod tutaj
                
            

Połączenia z Realnym Światem

Znajomość Pythonic code i podstawowych struktur danych jest kluczowa dla każdego Data Scientist. Wyobraźmy sobie, że pracujesz nad projektem analizy sentymentu komentarzy na temat nowego filmu. Potrzebujesz przetworzyć ogromną ilość danych tekstowych. Użycie list i słowników, wraz z pętlami i warunkami, pozwoli Ci na efektywne czyszczenie danych, analizę słów kluczowych i budowanie wstępnych modeli.

W branży finansowej, Python jest używany do analizy ryzyka, prognozowania trendów giełdowych i automatyzacji handlu. Struktury danych takie jak listy i słowniki są używane do przechowywania i przetwarzania danych transakcyjnych, cen akcji, czy informacji o klientach.

Wyzywamy Się!

Spróbuj stworzyć prosty program, który wczytuje od użytkownika listę liczb oddzielonych przecinkami, a następnie znajduje największą i najmniejszą liczbę w tej liście. Użyj pętli, instrukcji warunkowych i funkcji wbudowanych (np. split(), int(), max(), min()).

Dalsza Nauka

  • Biblioteka collections: Zapoznaj się z modułem collections w Pythonie. Zawiera on przydatne struktury danych, takie jak Counter, defaultdict, i deque, które mogą znacznie ułatwić pracę z danymi.
  • List Comprehension vs. Pętle: Przeczytaj więcej na temat różnic pomiędzy używaniem List Comprehension i standardowych pętli for. Kiedy używać jednego, a kiedy drugiego?
  • PEP 8: Poznaj PEP 8 - przewodnik po stylach dla kodu w Pythonie. Zapewni on, że Twój kod będzie czytelny i zgodny ze standardami.

Interactive Exercises

Instalacja Anaconda i uruchomienie Jupyter Notebook

Zainstaluj Anaconda. Uruchom Jupyter Notebook i stwórz nowy notebook. Wprowadź i uruchom prosty kod: `print("Witaj, świecie!")`. Sprawdź, czy wszystko działa poprawnie.

Praca z Listami

Utwórz listę z 5 elementami różnych typów danych. Dodaj nowy element do listy. Wyświetl element o indeksie 2. Przeanalizuj kod i sprawdź, czy rozumiesz działanie na listach.

Praca ze Słownikami

Utwórz słownik z informacjami o sobie (np. imię, wiek, zainteresowania). Dodaj do słownika nowe pole. Wyświetl zawartość słownika.

Refleksja: Zastosowania Data Science w Twoim życiu

Pomyśl o tym, gdzie w swoim codziennym życiu spotykasz się z Data Science. Czy jesteś w stanie zidentyfikować przykłady zastosowań Data Science, które pomagają Ci lub których używasz?

Knowledge Check

Question 1: Co to jest Jupyter Notebook?

Question 2: Co robi polecenie `lista.append(4)`?

Question 3: Które z poniższych narzędzi jest wykorzystywane do zarządzania pakietami Pythona?

Question 4: Która struktura danych w Pythonie przechowuje pary klucz-wartość?

Question 5: Co to jest Python?

Practical Application

Wyobraź sobie, że chcesz przewidywać, jakie produkty będą najczęściej kupowane przez klientów w sklepie internetowym. Data Science i Python mogą pomóc w analizie danych o zakupach i stworzeniu modelu rekomendacji.

Key Takeaways

Next Steps

Przygotuj się na następną lekcję: Przegląd bibliotek NumPy i Pandas. Zaprzyjaźnij się z Jupyter Notebook i poćwicz pisanie prostych skryptów w Pythonie.

Your Progress is Being Saved!

We're automatically tracking your progress. Sign up for free to keep your learning paths forever and unlock advanced features like detailed analytics and personalized recommendations.

Next Lesson (Day 2)