กวดวิชาNumPy

NumPy HOME แนะนำ NumPy NumPy เริ่มต้นใช้งาน NumPy การสร้างอาร์เรย์ การจัดทำดัชนี NumPy Array NumPy Array Slicing ประเภทข้อมูล NumPy NumPy Copy เทียบกับ View NumPy Array Shape การปรับรูปร่าง NumPy Array NumPy Array Iterating NumPy Array เข้าร่วม NumPy Array Split ค้นหาอาร์เรย์ NumPy NumPy Array Sort ตัวกรองอาร์เรย์ NumPy

NumPyสุ่ม

สุ่มอินโทร การกระจายข้อมูล การเรียงสับเปลี่ยนแบบสุ่ม โมดูล Seaborn การกระจายแบบปกติ การกระจายทวินาม จำหน่ายปลา กระจายสม่ำเสมอ การกระจายโลจิสติกส์ การกระจายพหุนาม การกระจายแบบเอกซ์โพเนนเชียล จิสแควร์ ดิสทริบิวชั่น การกระจาย Rayleigh พาเรโต้ ดิสทริบิวชั่น การกระจาย Zipf

NumPy ufunc

ufunc Intro ufunc สร้างฟังก์ชัน ufunc เลขคณิตอย่างง่าย ufunc การปัดเศษทศนิยม ufunc บันทึก ufunc ผลรวม ufunc ผลิตภัณฑ์ ufunc ความแตกต่าง ufunc ค้นหา LCM ufunc กำลังหา GCD ufunc ตรีโกณมิติ ufunc ไฮเปอร์โบลิก ufunc Set Operations

แบบทดสอบ/แบบฝึกหัด

แบบทดสอบ NumPy แบบฝึกหัด NumPy

NumPy ufuncs


ufunc คืออะไร?

ufuncs ย่อมาจาก "Universal Functions" และเป็นฟังก์ชัน NumPy ที่ทำงานบนndarrayวัตถุ

ทำไมต้องใช้ ufuncs?

ufuncs ใช้เพื่อนำvectorization ไปใช้ ใน NumPy ซึ่งเร็วกว่าการวนซ้ำองค์ประกอบ

พวกเขายังจัดให้มีการออกอากาศและวิธีการเพิ่มเติม เช่น ลด สะสม ฯลฯ ซึ่งมีประโยชน์มากสำหรับการคำนวณ

ufuncs ยังใช้อาร์กิวเมนต์เพิ่มเติมเช่น:

where อาร์เรย์บูลีนหรือเงื่อนไขที่กำหนดว่าการดำเนินการควรเกิดขึ้นที่ใด

dtype กำหนดประเภทผลตอบแทนขององค์ประกอบ

out อาร์เรย์เอาต์พุตที่ควรคัดลอกค่าส่งคืน


Vectorization คืออะไร?

การแปลงคำสั่งแบบวนซ้ำเป็นการดำเนินการแบบเวกเตอร์เรียกว่า vectorization

เร็วกว่าเนื่องจากซีพียูสมัยใหม่ได้รับการปรับให้เหมาะสมสำหรับการทำงานดังกล่าว

เพิ่มองค์ประกอบของสองรายการ

รายการ 1: [1, 2, 3, 4]

รายการ 2: [4, 5, 6, 7]

วิธีหนึ่งในการทำคือวนซ้ำทั้งสองรายการแล้วรวมแต่ละองค์ประกอบ

ตัวอย่าง

หากไม่มี ufunc เราสามารถใช้zip()วิธีการในตัวของ Python ได้:

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = []

for i, j in zip(x, y):
  z.append(i + j)
print(z)

NumPy มี ufunc สำหรับสิ่งนี้ ซึ่งเรียกadd(x, y) ว่าจะให้ผลลัพธ์เหมือนกัน

ตัวอย่าง

ด้วย ufunc เราสามารถใช้add()ฟังก์ชัน:

import numpy as np

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = np.add(x, y)

print(z)