เรียนเขียนโปรเเกรมง่ายๆกับ Expert Progamming Tutor กับบท NumPy ufuncs
ufuncs คืออะไร
ufuncs ย่อมาจาก "ฟังก์ชั่นสากล" และเป็นฟังก์ชั่น NumPy ที่ทำงานบนวัตถุ ndarray
ทำไมต้องใช้ ufuncs
ufuncs ใช้เพื่อสร้าง vectorization ใน NumPy ซึ่งเร็วกว่าการวนซ้ำองค์ประกอบ
มันยังมีการสะสมและวิธีการเพิ่มเติม เช่น ลดการสะสม ฯลฯ ที่มีประโยชน์มากสำหรับการคำนวณ
ufuncs รับข้อโต้แย้งเพิ่มเติมเช่น
- where โดยที่อาร์เรย์บูลีนหรือเงื่อนไขกำหนดว่าการดำเนินการควรจะเกิดขึ้นที่ใด
- dtype กำหนดประเภทผลตอบแทนขององค์ประกอบ
- out อาเรย์ที่ควรจะคัดลอกค่าส่งคืน
Vectorization คืออะไร
การแปลงคำสั่งวนซ้ำไปเป็นการดำเนินการที่ใช้เวกเตอร์เรียกว่า vectorization เร็วขึ้นเนื่องจากซีพียูสมัยใหม่ได้รับการปรับให้เหมาะสมสำหรับการทำงานดังกล่าว
เพิ่ม List ของ 2 รายการ
List 1 [1, 2, 3, 4] |
วิธีในการทำคือการวนซ้ำทั้งListและรวมแต่ละองค์ประกอบ
ตัวอย่าง
หากไม่มี ufunc เราสามารถใช้วิธีการในตัวของ Python zip()
x = [1, 2, 3, 4] |
ผลลัพธ์
[5, 7, 9, 11] |
NumPy มี ufunc สำหรับสิ่งนี้เรียกว่าadd (x, y) ที่จะให้ผลลัพธ์เดียวกัน
ตัวอย่าง
ด้วย ufunc เราสามารถใช้ฟังก์ชั่น add()
import numpy as np |
ผลลัพธ์
[5, 7, 9, 11] |
สรุปในบทนี้คือ ufuncs ใช้เพื่อสร้าง vectorization ใน NumPy ซึ่งเร็วกว่าการวนซ้ำองค์ประกอบ มันยังมีการสะสมและวิธีการเพิ่มเติม เช่น ลดการสะสม ฯลฯ ที่มีประโยชน์มากสำหรับการคำนวณ เเล้วเจอกันในบทถัดไป
Tag ที่น่าสนใจ: numpy ufuncs vectorization python programming array_manipulation numpy_functions numpy_operations vectorized_operations python_libraries
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com