NumPy - วัตถุ Ndarray
ออบเจ็กต์ที่สำคัญที่สุดที่กำหนดใน NumPy คือประเภทอาร์เรย์ N มิติที่เรียกว่า ndarray. อธิบายถึงการรวบรวมรายการประเภทเดียวกัน รายการในคอลเลกชันสามารถเข้าถึงได้โดยใช้ดัชนีที่อิงศูนย์
ทุกรายการใน ndarray ใช้ขนาดของบล็อกในหน่วยความจำเท่ากัน แต่ละองค์ประกอบใน ndarray เป็นวัตถุของวัตถุประเภทข้อมูล (เรียกว่าdtype).
รายการใด ๆ ที่แยกจากอ็อบเจ็กต์ ndarray (โดยการแบ่งส่วน) จะแสดงโดยออบเจ็กต์ Python ของอาร์เรย์ประเภทสเกลาร์ แผนภาพต่อไปนี้แสดงความสัมพันธ์ระหว่าง ndarray วัตถุชนิดข้อมูล (dtype) และประเภทสเกลาร์อาร์เรย์ -
อินสแตนซ์ของคลาส ndarray สามารถสร้างได้โดยรูทีนการสร้างอาร์เรย์ต่างๆที่อธิบายไว้ในบทช่วยสอน ndarray พื้นฐานถูกสร้างขึ้นโดยใช้ฟังก์ชันอาร์เรย์ใน NumPy ดังนี้ -
numpy.array
สร้าง ndarray จากออบเจ็กต์ใด ๆ ที่เปิดเผยส่วนต่อประสานอาร์เรย์หรือจากวิธีการใด ๆ ที่ส่งคืนอาร์เรย์
numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
ตัวสร้างข้างต้นรับพารามิเตอร์ต่อไปนี้ -
ซีเนียร์ | พารามิเตอร์และคำอธิบาย |
---|---|
1 | object ออบเจ็กต์ใด ๆ ที่เปิดเผยวิธีการเชื่อมต่ออาร์เรย์จะส่งกลับอาร์เรย์หรือลำดับ (ซ้อนกัน) ใด ๆ |
2 | dtype ประเภทข้อมูลที่ต้องการของอาร์เรย์หรือไม่ก็ได้ |
3 | copy ไม่จำเป็น. โดยค่าเริ่มต้น (จริง) วัตถุจะถูกคัดลอก |
4 | order C (หลักแถว) หรือ F (คอลัมน์หลัก) หรือ A (ใด ๆ ) (ค่าเริ่มต้น) |
5 | subok โดยค่าเริ่มต้นอาร์เรย์ที่ส่งคืนถูกบังคับให้เป็นอาร์เรย์คลาสพื้นฐาน ถ้าเป็นจริงคลาสย่อยจะผ่าน |
6 | ndmin ระบุขนาดขั้นต่ำของอาร์เรย์ผลลัพธ์ |
ลองดูตัวอย่างต่อไปนี้เพื่อทำความเข้าใจให้ดีขึ้น
ตัวอย่าง 1
import numpy as np
a = np.array([1,2,3])
print a
ผลลัพธ์มีดังนี้ -
[1, 2, 3]
ตัวอย่าง 2
# more than one dimensions
import numpy as np
a = np.array([[1, 2], [3, 4]])
print a
ผลลัพธ์มีดังนี้ -
[[1, 2]
[3, 4]]
ตัวอย่างที่ 3
# minimum dimensions
import numpy as np
a = np.array([1, 2, 3,4,5], ndmin = 2)
print a
ผลลัพธ์มีดังนี้ -
[[1, 2, 3, 4, 5]]
ตัวอย่างที่ 4
# dtype parameter
import numpy as np
a = np.array([1, 2, 3], dtype = complex)
print a
ผลลัพธ์มีดังนี้ -
[ 1.+0.j, 2.+0.j, 3.+0.j]
ndarrayออบเจ็กต์ประกอบด้วยส่วนหนึ่งมิติของหน่วยความจำคอมพิวเตอร์ที่ต่อเนื่องกันรวมกับโครงร่างการสร้างดัชนีที่แมปแต่ละรายการกับตำแหน่งในบล็อกหน่วยความจำ บล็อกหน่วยความจำเก็บองค์ประกอบตามลำดับแถวหลัก (สไตล์ C) หรือลำดับคอลัมน์หลัก (สไตล์ FORTRAN หรือ MatLab)