परिचय
पायथन में NaN को 1 मानकर सरणी तत्वों का संचयी गुणनफल (cumulative product) प्राप्त करने के लिए, numpy.nancumprod() विधि का उपयोग करें। NaN आने पर संचयी गुणनफल नहीं बदलता और अग्रणी NaN को 1 से बदल दिया जाता है। dtype पैरामीटर से परिणाम का डेटा प्रकार बदला जा सकता है।
पैरामीटर्स
- 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)
संचयी गुणनफल की गणना करें (axis=1, dtype=int)
print("\nसरणी तत्वों का संचयी गुणनफल...\n", np.nancumprod(arr, axis=1, dtype=int))
पूर्ण कोड उदाहरण
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)
# संचयी गुणनफल की गणना करें (axis=1, dtype=int)
print("\nसरणी तत्वों का संचयी गुणनफल...\n", np.nancumprod(arr, axis=1, dtype=int))
आउटपुट
हमारी सरणी...
[[ 5. 10. 15.]
[20. nan 30.]]
सरणी के आयाम...
2
सरणी का डेटा प्रकार...
float64
सरणी तत्वों का संचयी गुणनफल...
[[ 5 50 750]
[ 20 20 600]]
व्याख्या: axis=1 (पंक्ति-वार) के साथ: - पंक्ति 0: 5, 5×10=50, 50×15=750 - पंक्ति 1: 20, 20×(NaN→1)=20, 20×30=600 dtype=int के कारण परिणाम पूर्णांक हैं।