Przejdź do głównej zawartości

numpy

zrozumienie idei tablic (1–2 dni) ⭐

  • Poznaj, czym są tablice NumPy (ndarray) i jak różnią się od standardowych list w Pythonie.
  • Naucz się tworzyć tablice: np.array(), np.zeros(), np.ones(), np.arange(), np.linspace().
  • Zrozum podstawowe właściwości tablic: .shape, .dtype, .ndim, .size.
  • Ćwicz tworzenie i przekształcanie tablic. Zwróć uwagę na różnice w wydajności między listami a ndarray.

operacje matematyczne i indeksowanie (2–3 dni)

  • Dodawanie, odejmowanie, mnożenie, dzielenie – operacje wektorowe.
  • Operacje uniwersalne (np.sin(), np.exp(), np.sqrt()).
  • Indeksowanie i wycinanie tablic (slicing).
  • Maskowanie (boolean indexing): filtrowanie wartości na podstawie warunków.
  • Broadcasting – NumPy automatycznie dostosowuje rozmiary tablic, by móc wykonać operację.

kształtowanie i manipulacja danymi (2–4 dni)

  • Zmiana kształtu tablicy: .reshape(), .flatten(), .ravel(), .transpose().
  • Łączenie tablic: np.concatenate(), np.vstack(), np.hstack().
  • Dzielenie tablic: np.split(), np.array_split().
  • Ucz się przekształceń tablic poprzez ćwiczenia – to podstawa pracy z danymi w ML.

agregacje i statystyka

  • Podstawowe operacje: .sum(), .mean(), .std(), .min(), .max(), .argmax().
  • Operacje po osiach: np. np.mean(arr, axis=0).
  • Agregacje z warunkami: np.where(), np.any(), np.all().

📊 NumPy to kręgosłup Pandas – poznanie jego agregacji ułatwi zrozumienie późniejszej pracy z tzw. DataFrame'ami.

wydajność i dobre praktyki

  • Używanie typów danych: dtype='float32' vs float64.
  • Unikanie pętli – korzystaj z wektorowych operacji.
  • Pomiar czasu wykonania – timeit, %%time (Jupyter).

rozszerzenia i kontekst ml

  • Operacje macierzowe: np.dot(), np.matmul(), @.
  • Inwersje, transpozycje, wyznaczniki – np.linalg.
  • Przygotowanie danych: np.random, np.clip, np.sort.

polecane źródła