เลขคณิตอย่างง่าย
เลขคณิตอย่างง่าย
คุณสามารถใช้โอเปอเรเตอร์เลขคณิต+
-
*
/
ได้โดยตรงระหว่างอาร์เรย์ NumPy แต่ส่วนนี้จะกล่าวถึงส่วนขยายของส่วนเดียวกัน โดยที่เรามีฟังก์ชันที่สามารถรับออบเจ็กต์ที่เหมือนอาร์เรย์ได้ เช่น รายการ ค่าทูเปิล เป็นต้น และดำเนินการคำนวณแบบมีเงื่อนไข
เลขคณิตแบบมีเงื่อนไข:หมายความว่าเราสามารถกำหนดเงื่อนไขที่การดำเนินการเลขคณิตควรเกิดขึ้น
ฟังก์ชันเลขคณิตที่กล่าวถึงทั้งหมดมีwhere
พารามิเตอร์ซึ่งเราสามารถระบุเงื่อนไขนั้นได้
ส่วนที่เพิ่มเข้าไป
ฟังก์ชันadd()
จะรวมเนื้อหาของสองอาร์เรย์ และส่งคืนผลลัพธ์ในอาร์เรย์ใหม่
ตัวอย่าง
เพิ่มค่าใน arr1 ให้กับค่าใน arr2:
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)
ตัวอย่างข้างต้นจะส่งกลับ [30 32 34 36 38 40] ซึ่งเป็นผลรวมของ 10+20, 11+21, 12+22 เป็นต้น
การลบ
ฟังก์ชันsubtract()
ลบค่าจากอาร์เรย์หนึ่งด้วยค่าจากอาร์เรย์อื่น และส่งคืนผลลัพธ์ในอาร์เรย์ใหม่
ตัวอย่าง
ลบค่าใน arr2 ออกจากค่าใน arr1:
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)
ตัวอย่างข้างต้นจะส่งกลับ [-10 -1 8 17 26 35] ซึ่งเป็นผลมาจาก 10-20, 20-21, 30-22 เป็นต้น
การคูณ
ฟังก์ชันmultiply()
คูณค่าจากอาร์เรย์หนึ่งกับค่าจากอาร์เรย์อื่น และส่งคืนผลลัพธ์ในอาร์เรย์ใหม่
ตัวอย่าง
คูณค่าใน arr1 ด้วยค่าใน arr2:
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)
ตัวอย่างข้างต้นจะส่งกลับ [200 420 660 920 1200 1500] ซึ่งเป็นผลมาจาก 10*20, 20*21, 30*22 เป็นต้น
แผนก
ฟังก์ชันdivide()
แบ่งค่าจากอาร์เรย์หนึ่งด้วยค่าจากอาร์เรย์อื่น และส่งคืนผลลัพธ์ในอาร์เรย์ใหม่
ตัวอย่าง
แบ่งค่าใน arr1 ด้วยค่าใน arr2:
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)
ตัวอย่างข้างต้นจะส่งกลับ [3.333333333 4. 3. 5. 25. 1.81818182] ซึ่งเป็นผลมาจาก 10/3, 20/5, 30/10 เป็นต้น
พลัง
ฟังก์ชันpower()
จะเพิ่มค่าจากอาร์เรย์แรกไปเป็นกำลังของค่าของอาร์เรย์ที่สอง และส่งคืนผลลัพธ์ในอาร์เรย์ใหม่
ตัวอย่าง
เพิ่มค่าใน arr1 ให้เป็นกำลังของค่าใน arr2:
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)
ตัวอย่างข้างต้นจะส่งกลับ [1000 320,000 729000000 6553600000000 2500 0] ซึ่งเป็นผลมาจาก 10*10*10, 20*20*20*20*20, 30*30*30*30*30*30 เป็นต้น
ส่วนที่เหลือ
ทั้ง ฟังก์ชัน mod()
และremainder()
จะคืนค่าส่วนที่เหลือของค่าในอาร์เรย์แรกที่สอดคล้องกับค่าในอาร์เรย์ที่สอง และส่งคืนผลลัพธ์ในอาร์เรย์ใหม่
ตัวอย่าง
คืนส่วนที่เหลือ:
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)
ตัวอย่างข้างต้นจะส่งกลับ [1 6 3 0 0 27] ซึ่งเป็นเศษเหลือเมื่อคุณหาร 10 ด้วย 3 (10%) 20 กับ 7 (20%7) 30 กับ 9 (30%) เป็นต้น
คุณได้รับผลลัพธ์เดียวกันเมื่อใช้remainder()
ฟังก์ชัน:
ตัวอย่าง
คืนส่วนที่เหลือ:
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)
Quotient และ Mod
ฟังก์ชันdivmod()
ส่งคืนทั้งผลหารและม็อด ค่าที่ส่งคืนคือสองอาร์เรย์ อาร์เรย์แรกประกอบด้วยผลหาร และอาร์เรย์ที่สองประกอบด้วย mod
ตัวอย่าง
ส่งคืนผลหารและ mod:
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)
ตัวอย่างข้างต้นจะส่งกลับ:
(array([3, 2, 3, 5, 25, 1]), array([1, 6, 3, 0, 0, 27]))
อาร์เรย์แรกแสดงถึงผลหาร ( ค่าจำนวนเต็มเมื่อคุณหาร 10 ด้วย 3, 20 ด้วย 7, 30 ด้วย 9 เป็นต้น
อาร์เรย์ที่สองแสดงถึงส่วนที่เหลือของการหารเดียวกัน
ค่าสัมบูรณ์
ทั้ง ฟังก์ชัน absolute()
และabs()
ฟังก์ชันทำงานแบบเดียวกันตามองค์ประกอบ แต่เราควรใช้absolute()
เพื่อหลีกเลี่ยงความสับสนกับ inbuilt ของ pythonmath.abs()
ตัวอย่าง
ส่งคืนผลหารและ mod:
import numpy as np
arr = np.array([-1, -2, 1, 2, 3, -4])
newarr = np.absolute(arr)
print(newarr)
ตัวอย่างข้างต้นจะส่งกลับ [1 2 1 2 3 4]