ufunc oddiy arifmetika
Oddiy arifmetika
+ - * / arifmetik operatorlarini NumPy massivlari o‘rtasida to‘g‘ridan-to‘g‘ri ishlatishingiz mumkin, lekin ushbu bo‘limda uning kengaytirilgan ko‘rinishi ko‘rib chiqiladi: bunda massivga o‘xshash istalgan obyektlarni, masalan, ro‘yxatlar, tuplelar va hokazolarni qabul qilib, arifmetik amallarni shartga ko‘ra bajaradigan funksiyalar mavjud.
Shartga ko‘ra arifmetika: arifmetik amal bajarilishi kerak bo‘lgan shartlarni belgilashimiz mumkinligini anglatadi.
Ko‘rib chiqilgan barcha arifmetik funksiyalar where parametrini qabul qiladi, unda o‘sha shartni ko‘rsatishimiz mumkin.
Qo‘shish
add() funksiyasi ikki massiv tarkibini qo‘shadi va natijalarni yangi massivda qaytaradi.
Misol
arr1 massividagi qiymatlarni arr2 massividagi qiymatlarga qo‘shing:
import numpy as np
arr1 = np.array([10, 11, 12, 13, 14, 15])
arr2 = np.array([20, 21, 22, 23, 24, 25])
newarr = np.add(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [30 32 34 36 38 40] natijasini qaytaradi, bular 10+20, 11+21, 12+22 va hokazolarning yig‘indilaridir.
Ayirish
subtract() funksiyasi bir massivdagi qiymatlardan boshqa massivdagi qiymatlarni ayiradi va natijalarni yangi massivda qaytaradi.
Misol
arr1 massividagi qiymatlardan arr2 massividagi qiymatlarni ayiring:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([20, 21, 22, 23, 24, 25])
newarr = np.subtract(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [-10 -1 8 17 26 35] natijasini qaytaradi, bu 10-20, 20-21, 30-22 va hokazolarning natijasidir.
Ko‘paytirish
multiply() funksiyasi bir massivdagi qiymatlarni boshqa massivdagi qiymatlarga ko‘paytiradi va natijalarni yangi massivda qaytaradi.
Misol
arr1 massividagi qiymatlarni arr2 massividagi qiymatlarga ko‘paytiring:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([20, 21, 22, 23, 24, 25])
newarr = np.multiply(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [200 420 660 920 1200 1500] natijasini qaytaradi, bu 10*20, 20*21, 30*22 va hokazolarning natijasidir.
Bo‘lish
divide() funksiyasi bir massivdagi qiymatlarni boshqa massivdagi qiymatlarga bo‘ladi va natijalarni yangi massivda qaytaradi.
Misol
arr1 massividagi qiymatlarni arr2 massividagi qiymatlarga bo‘ling:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([3, 5, 10, 8, 2, 33])
newarr = np.divide(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [3.33333333 4. 3. 5. 25. 1.81818182] natijasini qaytaradi, bu 10/3, 20/5, 30/10 va hokazolarning natijasidir.
Darajaga ko‘tarish
power() funksiyasi birinchi massivdagi qiymatlarni ikkinchi massivdagi qiymatlar darajasiga ko‘taradi va natijalarni yangi massivda qaytaradi.
Misol
arr1 massividagi qiymatlarni arr2 massividagi qiymatlar darajasiga ko‘taring:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([3, 5, 6, 8, 2, 33])
newarr = np.power(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [1000 3200000 729000000 6553600000000 2500 0] natijasini qaytaradi, bu 10*10*10, 20*20*20*20*20, 30*30*30*30*30*30 va hokazolarning natijasidir.
Qoldiq
mod() va remainder() funksiyalarining ikkalasi ham birinchi massivdagi qiymatlarni ikkinchi massivdagi mos qiymatlarga bo‘lishdan hosil bo‘lgan qoldiqni hisoblaydi va natijalarni yangi massivda qaytaradi.
Misol
Qoldiqlarni qaytaring:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([3, 7, 9, 8, 2, 33])
newarr = np.mod(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [1 6 3 0 0 27] natijasini qaytaradi, bular 10 ni 3 ga (10%3), 20 ni 7 ga (20%7), 30 ni 9 ga (30%9) va hokazo bo‘lgandagi qoldiqlardir.
remainder() funksiyasidan foydalanganda ham xuddi shu natijani olasiz:
Misol
Qoldiqlarni qaytaring:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([3, 7, 9, 8, 2, 33])
newarr = np.remainder(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Bo‘linma va qoldiq
divmod() funksiyasi ham bo‘linmani, ham qoldiqni qaytaradi. Qaytariladigan qiymat ikkita massivdan iborat: birinchi massivda bo‘linma, ikkinchi massivda qoldiq bo‘ladi.
Misol
Bo‘linma va qoldiqni qaytaring:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 = np.array([3, 7, 9, 8, 2, 33])
newarr = np.divmod(arr1, arr2)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol quyidagini qaytaradi:
(array([3, 2, 3, 5, 25, 1]), array([1, 6, 3, 0, 0, 27]))
Birinchi massiv bo‘linmalarni ifodalaydi (10 ni 3 ga, 20 ni 7 ga, 30 ni 9 ga va hokazo bo‘lgandagi butun qiymat).
Ikkinchi massiv o‘sha bo‘lishlardagi qoldiqlarni ifodalaydi.
Mutlaq qiymatlar
absolute() va abs() funksiyalarining ikkalasi ham elementlar bo‘yicha bir xil absolyut qiymat amalini bajaradi, lekin Pythonning o‘rnatilgan math.abs() funksiyasi bilan chalkashtirmaslik uchun absolute() funksiyasidan foydalanganimiz ma’qul
Misol
Massivning absolyut qiymatlarini qaytaring:
import numpy as np
arr = np.array([-1, -2, 1, 2, 3, -4])
newarr = np.absolute(arr)
print(newarr)
O‘zingiz sinab ko‘ring »
Yuqoridagi misol [1 2 1 2 3 4] massivini qaytaradi.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
