NumPy
หน้าตา
บทความนี้อาจต้องการตรวจสอบต้นฉบับ ในด้านไวยากรณ์ รูปแบบการเขียน การเรียบเรียง คุณภาพ หรือการสะกด คุณสามารถช่วยพัฒนาบทความได้ |
ตารางฟังก์ชัน y=sin(x) สร้างด้วยนัมไพและ Matplotlib libraries | |
| ผู้ออกแบบ | Travis Oliphant |
|---|---|
| นักพัฒนา | โครงการชุมชน |
| วันที่เปิดตัว | ในชื่อ Numeric, ค.ศ. 1995; ในชื่อ NumPy, ค.ศ. 2006 |
| รุ่นเสถียร | 2.3.5[1]
/ 16 พฤศจิกายน 2025 |
| ที่เก็บข้อมูล | |
| ภาษาที่เขียน | Python, C |
| ระบบปฏิบัติการ | ข้ามแพลตฟอร์ม |
| ประเภท | การวิเคราะห์เชิงตัวเลข |
| สัญญาอนุญาต | BSD[2] |
| เว็บไซต์ | numpy |
นัมไพ (อังกฤษ: NumPy, /ˈnʌmpaɪ/ num-py) เป็นส่วนขยายของภาษาไพทอน เพื่อจัดการเมทริกซ์หรืออาร์เรย์หลายมิติรวมถึงฟังก์ชันทางคณิตศาสตร์ระดับสูงที่ทำงานบนอาร์เรย์เหล่านี้ [3]
นอกจากนั้น คลังซอฟต์แวร์โอเพนซอร์สและเสรีมีฟังก์ชันหลายอย่างที่จัดการและใช้งานได้ง่ายขึ้น โดยเฉพาะอย่างยิ่งในการสร้างอาร์เรย์โดยตรงจากไฟล์ หรือเพื่อบันทึกอาร์เรย์ในไฟล์ เพื่อจัดการเวกเตอร์ เมทริกซ์ และพหุนาม
นัมไพเป็นฐานเพิ่มเติมของ SciPy ซึ่งเป็นการเก็บรวบรวมคลังโปรแกรมของ Python เกี่ยวกับการคำนวณทางวิทยาศาสตร์ นัมไพเป็นซอฟต์แวร์โอเพนซอร์สและมีผู้มีส่วนร่วมหลายคน นัมไพได้รับการสนับสนุนทางการเงินโดยนัมโฟกัส[4]
ตัวอย่าง
[แก้]การสร้างตาราง
[แก้]>>> import numpy as np
>>> x = np.array ([1, 2, 3])
>>> x
array ([1, 2, 3])
>>> y = np.arange (10)
>>> y
array ([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
การดำเนินงานขั้นพื้นฐาน
[แก้]>>> a = np.array ([1, 2, 3, 6])
>>> b = np.linspace (0, 2, 4)
>>> c = a - b
>>> c
array ([ 1. , 1.33333333, 1.66666667, 4. ])
>>> a**2
array ([ 1, 4, 9, 36])
ฟังก์ชันสากล
[แก้]>>> a = np.linspace (-np.pi, np.pi, 100)
>>> b = np.sin (a)
>>> c = np.cos (a)
พีชคณิตเชิงเส้น
[แก้]>>> from numpy.random import rand
>>> from numpy.linalg import solve, inv
>>> a = np.array ([[1, 2, 3], [3, 4, 6.7], [5, 9.0, 5]])
>>> a.transpose ()
array ([[1. , 3. , 5. ],
[ 2. , 4. , 9. ],
[ 3. , 6.7, 5. ]])
>>> inv (a)
array ([[-2.27683616, 0.96045198, 0.07909605],
[ 1.04519774, -0.56497175, 0.1299435 ],
[ 0.39548023, 0.05649718, -0.11299435]])
>>> b = array ([3, 2, 1])
>>> solve (a, b) # résout ax = b
array ([-4.83050847, 2.13559322, 1.18644068])
>>> c = rand (3, 3) # crée une matrice 3x3 au hasard
>>> c
array ([[ 3.98732789, 2.47702609, 4.71167924],
[ 9.24410671, 5.5240412 , 10.6468792 ],
[ 10.38136661, 8.44968437, 15.17639591]])
>>> np.dot (a, c) # multiplication de matrices
array ([[ 53.61964114, 38.8741616 , 71.53462537],
[ 118.4935668 , 86.14012835, 158.40440712],
[ 155.04043289, 104.3499231 , 195.26228855]])
>>> a @ c # depuis Python 3.5 et NumPy 1.10, équivalent à np.dot (a, c)
array ([[ 53.61964114, 38.8741616 , 71.53462537],
[ 118.4935668 , 86.14012835, 158.40440712],
[ 155.04043289, 104.3499231 , 195.26228855]])
อ้างอิง
[แก้]- ↑ "Release 2.3.5". 16 พฤศจิกายน 2025. สืบค้นเมื่อ 18 พฤศจิกายน 2025.
- ↑ "NumPy — NumPy". numpy.org. NumPy developers.
- ↑ Charles R Harris; K. Jarrod Millman; Stéfan J. van der Walt; และคณะ (16 กันยายน 2020, 1 กันยายน 2020), "Array programming with NumPy", เนเจอร์, 585 (7825): 357–362, arXiv:2006.10256, doi:10.1038/S41586-020-2649-2, PMC 7759461, PMID 32939066
{{citation}}: ตรวจสอบค่าวันที่ใน:|date=(help), Wikidata Q99413970 - ↑ "NumFOCUS Sponsored Projects". NumFOCUS. สืบค้นเมื่อ 2021-10-25.
อ่านเพิ่ม
[แก้]- McKinney, Wes (2022). Python for Data Analysis (3rd ed.). O'Reilly. ISBN 978-1098104030.
- Bressert, Eli (2012). Scipy and Numpy: An Overview for Developers. O'Reilly. ISBN 978-1-4493-0546-8.
- VanderPlas, Jake (2016). "Introduction to NumPy". Python Data Science Handbook: Essential Tools for Working with Data. O'Reilly. pp. 33–96. ISBN 978-1-4919-1205-8.