NumPy ufuncs
यूफंक्स क्या हैं?
ufuncs "सार्वभौमिक कार्य" के लिए खड़ा है और वे NumPy फ़ंक्शन हैं जो ndarray
ऑब्जेक्ट पर संचालित होते हैं।
यूफंक्स का उपयोग क्यों करें?
ufuncs का उपयोग NumPy में वैश्वीकरण को लागू करने के लिए किया जाता है जो कि तत्वों पर पुनरावृति की तुलना में तेज़ है।
वे प्रसारण और अतिरिक्त तरीके जैसे कम करना, जमा करना आदि भी प्रदान करते हैं जो गणना के लिए बहुत सहायक होते हैं।
ufuncs अतिरिक्त तर्क भी लेते हैं, जैसे:
where
बूलियन सरणी या स्थिति परिभाषित करती है कि संचालन कहाँ होना चाहिए।
dtype
तत्वों के वापसी प्रकार को परिभाषित करना।
out
आउटपुट सरणी जहां वापसी मूल्य की प्रतिलिपि बनाई जानी चाहिए।
वेक्टराइजेशन क्या है?
पुनरावृत्तीय कथनों को सदिश आधारित संक्रिया में परिवर्तित करना वैश्वीकरण कहलाता है।
यह तेज़ है क्योंकि आधुनिक सीपीयू ऐसे कार्यों के लिए अनुकूलित हैं।
दो सूचियों के तत्वों को जोड़ें
सूची 1: [1, 2, 3, 4]
सूची 2: [4, 5, 6, 7]
इसे करने का एक तरीका दोनों सूचियों पर पुनरावृति करना और फिर प्रत्येक तत्वों का योग करना है।
उदाहरण
Ufunc के बिना, हम Python की अंतर्निहित zip()
विधि का उपयोग कर सकते हैं:
x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = []
for i, j in zip(x, y):
z.append(i + j)
print(z)
NumPy के पास इसके लिए एक ufunc है, जिसे कहा जाता add(x, y)
है कि वही परिणाम देगा।
उदाहरण
Ufunc के साथ, हम add()
फ़ंक्शन का उपयोग कर सकते हैं:
import numpy as np
x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = np.add(x, y)
print(z)