Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python में अक्ष 0 पर NaN को एक मानकर सरणी तत्वों का संचयी गुणनफल लौटाएं

विवरण

numpy.nancumprod() फंक्शन सरणी तत्वों का संचयी गुणनफल (cumulative product) लौटाता है, NaN मानों को 1 मानकर (गुणनफल को अपरिवर्तित छोड़ते हुए)। अग्रणी NaN को 1 से बदल दिया जाता है। पूरी तरह से NaN या खाली स्लाइस के लिए 1 लौटाया जाता है।

पैरामीटर्स

  • a - इनपुट ऐरे
  • axis - वह अक्ष जिसके साथ संचयी गुणनफल गणना किया जाता है (डिफ़ॉल्ट: फ्लैट)
  • dtype - परिणाम और संचयक का डेटा प्रकार
  • out - वैकल्पिक आउटपुट ऐरे

चरण

import numpy as np

# NaN के साथ नंपाई ऐरे बनाएं
arr = np.array([[5, 10, 15], [20, np.nan, 30]])

print("हमारा ऐरे...\n", arr)
print("\nहमारे ऐरे के आयाम...\n", arr.ndim)
print("\nहमारे ऐरे ऑब्जेक्ट का डेटाटाइप...\n", arr.dtype)

# अक्ष 0 पर संचयी गुणनफल (NaN को 1 मानकर)
print("\nसरणी तत्वों का संचयी गुणनफल...\n", np.nancumprod(arr, axis=0))

पूर्ण उदाहरण

import numpy as np

# NaN के साथ ऐरे बनाएं
arr = np.array([[5, 10, 15], [20, np.nan, 30]])

# ऐरे प्रदर्शित करें
print("हमारा ऐरे...\n", arr)
print("\nहमारे ऐरे के आयाम...\n", arr.ndim)
print("\nहमारे ऐरे ऑब्जेक्ट का डेटाटाइप...\n", arr.dtype)

# अक्ष 0 पर संचयी गुणनफल
print("\nसरणी तत्वों का संचयी गुणनफल...\n", np.nancumprod(arr, axis=0))

आउटपुट

हमारा ऐरे...
[[ 5. 10. 15.]
 [20. nan 30.]]
हमारे ऐरे के आयाम...
2
हमारे ऐरे ऑब्जेक्ट का डेटाटाइप...
float64
सरणी तत्वों का संचयी गुणनफल...
[[  5.  10.  15.]
 [100.  10. 450.]]

व्याख्या (axis=0)

स्तंभ-वार संचयी गुणनफल:

  • स्तंभ 0: 5 → 5*20=100
  • स्तंभ 1: 10 → 10*1=10 (NaN को 1 माना)
  • स्तंभ 2: 15 → 15*30=450

सामान्य cumprod से तुलना


# सामान्य cumprod: NaN प्रसारित होता है
np.cumprod(arr, axis=0)
# [[  5.  10.  15.]
#  [100.  nan 450.]]

# nancumprod: NaN को अनदेखा करता है
np.nancumprod(arr, axis=0)
# [[  5.  10.  15.]
#  [100.  10. 450.]]

अनुप्रयोग

  • लापता डेटा वाले समय श्रृंखला विश्लेषण
  • कुछ मान NaN होने पर ज्यामितीय माध्य गणना
  • वित्तीय रिटर्न श्रृंखला जहां कुछ दिनों का डेटा लापता है
  • संभाव्यता गणना जहां कुछ घटनाएं अनदेखी हैं

संबंधित फंक्शन्स

  • np.nancumsum() - NaN को 0 मानकर संचयी योग
  • np.nanprod() - NaN को अनदेखा करके कुल गुणनफल
  • np.cumprod() - सामान्य संचयी गुणनफल (NaN प्रसारित करता है)
  1. - पायथन में अक्ष 1 पर NaN को शून्य मानकर सरणी तत्वों का संचयी योग लौटाना

    दिए गए अक्ष पर सरणी तत्वों का संचयी योग लौटाने के लिए, NaN को शून्य मानकर nancumsum() विधि का उपयोग करें। जब NaN का सामना होता है तो संचयी योग नहीं बदलता और अग्रणी NaN को शून्य से बदल दिया जाता है। उन स्लाइस के लिए शून्य लौटाए जाते हैं जो सभी NaN हैं या खाली हैं। यह विधि परिणाम रखने वाली एक नई सरणी

  1. - पायथन में अक्ष 0 पर NaN को शून्य मानकर सरणी तत्वों का संचयी योग लौटाना

    दिए गए अक्ष पर सरणी तत्वों का संचयी योग लौटाने के लिए, NaN को शून्य मानकर nancumsum() विधि का उपयोग करें। जब NaN का सामना होता है तो संचयी योग नहीं बदलता और अग्रणी NaN को शून्य से बदल दिया जाता है। उन स्लाइस के लिए शून्य लौटाए जाते हैं जो सभी NaN हैं या खाली हैं। संचयी कार्य इस तरह करता है: 5, 5+10,

  1. - पायथन में N-डायमेंशनल ऐरे का ग्रेडिएंट एक्सिस 0 पर लौटाएं

    ग्रेडिएंट की गणना इंटीरियर पॉइंट्स में सेकंड ऑर्डर एक्यूरेट सेंट्रल डिफरेंसेस का उपयोग करके की जाती है और बाउंड्रीज पर फर्स्ट या सेकंड ऑर्डर एक्यूरेट वन-साइडेड (फॉरवर्ड या बैकवर्ड) डिफरेंसेस का उपयोग करके। लौटाया गया ग्रेडिएंट इसलिए इनपुट ऐरे के समान आकार का होता है। पहला पैरामीटर f एक N-डायमेंशनल