0 और 1 के बीच numpy सरणी में मानों को सामान्य कैसे करें


0 और 1 के बीच NumPy सरणी के मानों को सामान्य करने के लिए, आप निम्न विधियों में से एक का उपयोग कर सकते हैं:

विधि 1: Numpy का उपयोग करें

 import numpy as np

x_norm = (x-np. min (x))/(np. max (x)-np. min (x))

विधि 2: स्केलेरन का उपयोग करें

 from sklearn import preprocessing as pre

x = x. reshape (-1, 1)

x_norm = pre. MinMaxScaler (). fit_transform (x)

दोनों विधियाँ मानती हैं कि x उस NumPy सरणी का नाम है जिसे आप सामान्यीकृत करना चाहते हैं।

निम्नलिखित उदाहरण दिखाते हैं कि व्यवहार में प्रत्येक विधि का उपयोग कैसे करें।

उदाहरण 1: NumPy का उपयोग करके मानों को सामान्य करें

मान लीजिए हमारे पास निम्नलिखित NumPy सरणी है:

 import numpy as np

#create NumPy array
x = np. array ([13, 16, 19, 22, 23, 38, 47, 56, 58, 63, 65, 70, 71])

हम 0 और 1 के बीच सरणी में प्रत्येक मान को सामान्य करने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं:

 #normalize all values to be between 0 and 1
x_norm = (x-np. min (x))/(np. max (x)-np. min (x))

#view normalized array
print (x_norm)

[0. 0.05172414 0.10344828 0.15517241 0.17241379 0.43103448
 0.5862069 0.74137931 0.77586207 0.86206897 0.89655172 0.98275862
 1. ]

NumPy सरणी में प्रत्येक मान को 0 और 1 के बीच सामान्यीकृत किया गया है।

यहां बताया गया है कि इसने कैसे काम किया:

डेटासेट में न्यूनतम मान 13 है और अधिकतम मान 71 है।

13 के पहले मान को सामान्य करने के लिए, हम पहले साझा किया गया फॉर्मूला लागू करेंगे:

  • z i = (x i – न्यूनतम(x)) / (अधिकतम(x) – न्यूनतम(x)) = (13 – 13) / (71 – 13) = 0

16 के दूसरे मान को सामान्य करने के लिए, हम उसी सूत्र का उपयोग करेंगे:

  • z i = (x i – न्यूनतम(x)) / (अधिकतम(x) – न्यूनतम(x)) = (16 – 13) / (71 – 13) = 0.0517

19 के तीसरे मान को सामान्य करने के लिए, हम उसी सूत्र का उपयोग करेंगे:

  • z i = (x i – न्यूनतम(x)) / (अधिकतम(x) – न्यूनतम(x)) = (19 – 13) / (71 – 13) = 0.1034

हम 0 और 1 के बीच मूल NumPy सरणी में प्रत्येक मान को सामान्य करने के लिए इसी सूत्र का उपयोग करते हैं।

उदाहरण 2: स्केलेरन का उपयोग करके मूल्यों को सामान्य करें

फिर, मान लीजिए कि हमारे पास निम्नलिखित NumPy सरणी है:

 import numpy as np

#create NumPy array
x = np. array ([13, 16, 19, 22, 23, 38, 47, 56, 58, 63, 65, 70, 71])

हम 0 और 1 के बीच सरणी में प्रत्येक मान को सामान्य करने के लिए sklearn के MinMaxScaler() फ़ंक्शन का उपयोग कर सकते हैं:

 from sklearn import preprocessing as pre

#reshape array so that it works with sklearn
x = x. reshape (-1, 1)

#normalize all values to be between 0 and 1
x_norm = pre. MinMaxScaler (). fit_transform (x)

#view normalized array
print (x_norm)

[[0. ]
 [0.05172414]
 [0.10344828]
 [0.15517241]
 [0.17241379]
 [0.43103448]
 [0.5862069]
 [0.74137931]
 [0.77586207]
 [0.86206897]
 [0.89655172]
 [0.98275862]
 [1. ]]

NumPy सरणी में प्रत्येक मान को 0 और 1 के बीच सामान्यीकृत किया गया है।

ध्यान दें कि ये सामान्यीकृत मान पिछली पद्धति का उपयोग करके गणना किए गए मानों से मेल खाते हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि NumPy में अन्य सामान्य कार्य कैसे करें:

NumPy सरणी में तत्वों को कैसे ऑर्डर करें
NumPy सरणी से डुप्लिकेट तत्वों को कैसे हटाएं
NumPy सरणी में सबसे अधिक बार आने वाला मान कैसे खोजें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *