Data Science · मराठी आवृत्ती · Python basics
P12.1 NumPy म्हणजे काय आणि Lists ऐवजी का वापरायचं?
हे का शिकायचं?
लाखो numbers वर loop हळू चालतो. NumPy तेच काम एका line मध्ये आणि खूप वेगाने करतो.
हे काय आहे?
NumPy array म्हणजे एकाच type च्या numbers ची रांग. array * 2 प्रत्येक value ला 2 ने गुणतो — loop नको.
कसं करायचं?
Step 1. import numpy as np
Step 2. np.array(list) ने array बनवा.
Step 3. थेट गणित करा.
Python आणि इतर भाषा: तुलना
या भाषा शिकायची गरज नाही. Python किती सोपा वाचायला आहे ते दाखवण्यासाठी ही table आहे.
| भाषा | Code |
|---|---|
| Python list | [p + 2 for p in prices] |
| NumPy | prices + 2 |
| JavaScript | prices.map(p => p + 2) |
| Java | Arrays.stream(prices).map(p -> p + 2).toArray() |
उदाहरणं: copy करा आणि चालवा
उदाहरण A: List विरुद्ध array
हा code चालवा:
import numpy as np
prices_list = [10, 20, 30, 40]
prices = np.array(prices_list)
print([p + 2 for p in prices_list])
print(prices + 2)
तुम्हाला दिसणारा output:
[12, 22, 32, 42]
[12 22 32 42]
याचा अर्थ: List ला loop (comprehension) लागतो; array ला थेट + 2 केलं तरी प्रत्येक value मध्ये 2 जोडले जातात.
उदाहरण B: Speed तपासा
हा code चालवा:
import numpy as np, time
nums = list(range(1_000_000))
arr = np.arange(1_000_000)
t = time.time(); _ = [n + 1 for n in nums]; t_list = time.time() - t
t = time.time(); _ = arr + 1; t_np = time.time() - t
print("NumPy faster:", t_np < t_list)
तुम्हाला दिसणारा output:
NumPy faster: True
याचा अर्थ: एकाच कामासाठी NumPy loop पेक्षा खूप वेगवान ठरला.