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

NaN को एक मानकर संचयी उत्पाद लौटाएं लेकिन Python में परिणाम के प्रकार को बदलें

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

विधि एक नई सरणी लौटाती है, जब तक कि परिणाम निर्दिष्ट नहीं किया जाता है, तब तक परिणाम वापस कर दिया जाता है, जिस स्थिति में इसे वापस कर दिया जाता है। संचयी कार्य जैसे, 5, 5*10, 5*10*15, 5*10*15*20। पहला पैरामीटर इनपुट सरणी है। दूसरा पैरामीटर अक्ष है जिसके साथ संचयी उत्पाद की गणना की जाती है। डिफ़ॉल्ट रूप से इनपुट चपटा होता है।

तीसरा पैरामीटर लौटाए गए सरणी का प्रकार है, साथ ही संचायक का भी है जिसमें तत्वों को गुणा किया जाता है। यदि dtype निर्दिष्ट नहीं है, तो यह dtype a के लिए डिफॉल्ट करता है, जब तक कि a में एक पूर्णांक dtype न हो, जिसकी सटीकता डिफ़ॉल्ट प्लेटफ़ॉर्म पूर्णांक से कम हो। उस स्थिति में, इसके बजाय डिफ़ॉल्ट प्लेटफ़ॉर्म पूर्णांक का उपयोग किया जाता है।

चौथा पैरामीटर वैकल्पिक आउटपुट सरणी है जिसमें परिणाम रखना है। इसका आकार और बफर लंबाई अपेक्षित आउटपुट के समान होनी चाहिए लेकिन परिणामी मानों का प्रकार यदि आवश्यक हो तो डाला जाएगा।

कदम

सबसे पहले, आवश्यक पुस्तकालयों को आयात करें -

import numpy as np

सरणी () विधि का उपयोग करके एक संख्यात्मक सरणी बनाना। हमने नैन के साथ इंट टाइप के एलिमेंट जोड़े हैं -

arr = np.array([[5, 10, 15], [20, np.nan, 30]])

सरणी प्रदर्शित करें -

print("Our Array...\n",arr)

आयामों की जाँच करें -

print("\nDimensions of our Array...\n",arr.ndim)

डेटाटाइप प्राप्त करें -

print("\nDatatype of our Array object...\n",arr.dtype)

किसी दिए गए अक्ष पर सरणी तत्वों के संचयी उत्पाद को वापस करने के लिए, NaN को एक मानते हुए, nancumprod () विधि का उपयोग करें, जब NaN का सामना किया जाता है और प्रमुख NaN को एक द्वारा प्रतिस्थापित किया जाता है, तो संचयी उत्पाद नहीं बदलता है -

print("\nCumulative Product of array elements...\n",np.nancumprod(arr, axis = 1, dtype = int))

उदाहरण

import numpy as np

# Creating a numpy array using the array() method
# We have added elements of int type with nan
arr = np.array([[5, 10, 15], [20, np.nan, 30]])

# Display the array
print("Our Array...\n",arr)

# Check the Dimensions
print("\nDimensions of our Array...\n",arr.ndim)

# Get the Datatype
print("\nDatatype of our Array object...\n",arr.dtype)

# To return the cumulative product of array elements over a given axis treating NaNs as one, use the nancumprod() method
# The cumulative product does not change when NaNs are encountered and leading NaNs are replaced by ones.
print("\nCumulative Product of array elements...\n",np.nancumprod(arr, axis = 1, dtype = int))

आउटपुट

Our Array...
[[ 5. 10. 15.]
[20. nan 30.]]

Dimensions of our Array...
2

Datatype of our Array object...
float64

Cumulative Product of array elements...
[[ 5 50 750]
[ 20 20 600]]

  1. दिए गए अक्ष 1 पर सरणी तत्वों का संचयी योग लौटाएं, NaNs को पायथन में शून्य मानते हुए

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

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

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

  1. पायथन पंडों - एक इंटरवलएरे को वर्तमान के समान लौटाएं लेकिन निर्दिष्ट पक्ष पर बंद करें

    एक इंटरवलएरे को वर्तमान के समान लेकिन निर्दिष्ट पक्ष पर बंद करने के लिए, array.set_closed() का उपयोग करें पैरामीटर के साथ दोनों। सबसे पहले, आवश्यक पुस्तकालयों को आयात करें - import pandas as pd एक सरणी-जैसे विभाजनों से एक नया इंटरवलएरे का निर्माण करें - array = pd.arrays.IntervalArray.from_breaks