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'vsfloat64. - 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
- Oficjalna dokumentacja NumPy
- Wprowadzenie do NumPy – W3Schools
- NumPy Cheatsheet – DataCamp
- Visual NumPy (NumPy Visual Guide)