NumPy का numpy.fix() फंक्शन फ्लोट मानों को शून्य की ओर (towards zero) राउंड करता है। यह सकारात्मक संख्याओं के लिए फ्लोर (floor) और नकारात्मक संख्याओं के लिए सीलिंग (ceiling) की तरह काम करता है।
सिंटैक्स और व्यवहार
numpy.fix(x, out=None)
- x: राउंड किए जाने वाले फ्लोट्स का ऐरे।
- out: वैकल्पिक आउटपुट ऐरे।
- वापसी: समान आकार का फ्लोट ऐरे जिसमें राउंडेड मान हों।
मुख्य विशेषताएं
- शून्य की ओर राउंड करता है (ट्रंकेशन जैसा व्यवहार)।
- सकारात्मक: 3.7 → 3.0 (फ्लोर)
- नकारात्मक: -3.7 → -3.0 (सीलिंग)
- परिणाम हमेशा फ्लोट टाइप में होता है।
int()याnp.trunc()के समान व्यवहार।
उदाहरण
import numpy as np
# फ्लोट ऐरे बनाएं
arr = np.array([120.6, -120.6, 200.7, -320.1, 320.1, 500.6])
print("मूल ऐरे:\n", arr)
print("\nडेटा टाइप:", arr.dtype)
print("\nडायमेंशन्स:", arr.ndim)
print("\nशेप:", arr.shape)
print("\nएलिमेंट्स:", arr.size)
# शून्य की ओर राउंड करें
rounded = np.fix(arr)
print("\nराउंडेड परिणाम (शून्य की ओर):\n", rounded)
आउटपुट
मूल ऐरे:
[ 120.6 -120.6 200.7 -320.1 320.1 500.6]
डेटा टाइप: float64
डायमेंशन्स: 1
शेप: (6,)
एलिमेंट्स: 6
राउंडेड परिणाम (शून्य की ओर):
[ 120. -120. 200. -320. 320. 500.]
अन्य राउंडिंग फंक्शन्स से तुलना
arr = np.array([2.7, -2.7, 2.2, -2.2])
print("मूल:", arr)
print("np.fix() (शून्य की ओर):", np.fix(arr))
print("np.floor() (नीचे की ओर):", np.floor(arr))
print("np.ceil() (ऊपर की ओर):", np.ceil(arr))
print("np.round() / np.rint() (निकटतम):", np.round(arr))
print("np.trunc() (ट्रंकेट):", np.trunc(arr))
तुलना आउटपुट
मूल: [ 2.7 -2.7 2.2 -2.2]
np.fix() (शून्य की ओर): [ 2. -2. 2. -2.]
np.floor() (नीचे की ओर): [ 3. -3. 2. -3.]
np.ceil() (ऊपर की ओर): [ 3. -2. 3. -2.]
np.round() (निकटतम): [ 3. -3. 2. -2.]
np.trunc() (ट्रंकेट): [ 2. -2. 2. -2.]
व्यावहारिक उपयोग
- इंडेक्स गणना जहां फ्लोट को इंटीजर में बदलना हो।
- पिक्सेल कोऑर्डिनेट्स या ग्रिड पोजीशन की गणना।
- वित्तीय गणनाओं में सेंट को ड्रॉप करना (हालांकि Decimal बेहतर है)।
- किसी भी स्थिति जहां ट्रंकेशन व्यवहार वांछित हो।
नोट
np.fix() और np.trunc() व्यवहार में समान हैं। fix नाम MATLAB/ऑक्टेव कम्पैटिबिलिटी के लिए रखा गया है।