🎯 Definicja

NumPy to fundament obliczeń numerycznych w Pythonie. Bez NumPy nie byłoby Pandas, Scikit-Learn ani PyTorch. Jego sercem jest obiekt ndarray - tablica, która jest 50x szybsza niż zwykła lista w Pythonie, bo pod spodem działa w języku C.

🔑 Kluczowe punkty

  • Wektoryzacja: Zamiast pisać pętle for, wykonujesz operacje na całych tablicach naraz (array1 + array2).
  • Broadcasting: Magia, która pozwala dodawać liczbę (skalar) do macierzy bez ręcznego kopiowania.
  • Algebra Liniowa: Mnożenie macierzy, transpozycja, rozkłady - wszystko wbudowane.

📚 Szczegółowe wyjaśnienie

Dlaczego Python (wolny język) dominuje w Data Science? Właśnie dzięki bibliotekom takim jak NumPy, które są tylko “wrapperem” na superszybki kod w C/Fortranie. Kiedy robisz np.sum(array), Python tylko wydaje rozkaz, a ciężką pracę wykonuje C.

💡 Przykład zastosowania

Masz milion ocen filmów. Chcesz je podnieść o 10%. W czystym Pythonie:

nowe_oceny = [x * 1.1 for x in oceny] # Wolne! Pętla w Pythonie.

W NumPy:

nowe_oceny = oceny * 1.1 # Szybkie! Wektoryzacja w C.

📌 Źródła

  • NumPy Documentation.

👽 Brudnopis

  • Jeśli pracujesz z tabelami danych (Excel-like), używasz Pandas (który jest zbudowany na NumPy). Jeśli pracujesz z obrazami, dźwiękiem lub surowymi macierzami - używasz czystego NumPy.