ufunc o‘nli kasrlarni yaxlitlash
O‘nli kasrlarni yaxlitlash
NumPy kutubxonasida o‘nli kasrlarni yaxlitlashning asosan beshta usuli bor:
- kesish (truncation)
- fix
- yaxlitlash (rounding)
- floor
- ceil
Kesish (truncation)
O‘nli kasr qismi olib tashlanadi va nolga eng yaqin float son qaytariladi. Buning uchun trunc() va fix() funksiyalaridan foydalaning.
Misol
Quyidagi massiv elementlarining kasr qismini kesib tashlang:
import numpy as np
arr = np.trunc([-3.1666, 3.6667])
print(arr)
O‘zingiz sinab ko‘ring »
Misol
Xuddi shu misol, fix() yordamida:
import numpy as np
arr = np.fix([-3.1666, 3.6667])
print(arr)
O‘zingiz sinab ko‘ring »
Yaxlitlash (rounding)
around() funksiyasi, agar keyingi raqam >=5 bo‘lsa, oldingi raqam yoki o‘nli xonani 1 ga oshiradi, aks holda hech narsa qilmaydi.
Masalan, 3.16666 ni 1 ta o‘nli xonagacha yaxlitlasak, 3.2 hosil bo‘ladi
Misol
3.1666 sonini 2 ta o‘nli xonagacha yaxlitlang:
import numpy as np
arr = np.around(3.1666, 2)
print(arr)
O‘zingiz sinab ko‘ring »
Floor (pastga yaxlitlash)
floor() funksiyasi o‘nli kasrni eng yaqin kichik butun songa yaxlitlaydi.
Masalan, 3.166 ning floor qiymati 3 ga teng.
Misol
Quyidagi massiv elementlarini pastga yaxlitlang (floor):
import numpy as np
arr = np.floor([-3.1666, 3.6667])
print(arr)
O‘zingiz sinab ko‘ring »
Ceil (yuqoriga yaxlitlash)
ceil() funksiyasi o‘nli kasrni eng yaqin katta butun songa yaxlitlaydi.
Masalan, 3.166 ning ceil qiymati 4 ga teng.
Misol
Quyidagi massiv elementlarini yuqoriga yaxlitlang (ceil):
import numpy as np
arr = np.ceil([-3.1666, 3.6667])
print(arr)
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
