บทช่วยสอน Python NumPy: เรียนรู้ Python Numpy ด้วยตัวอย่าง
เผยแพร่แล้ว: 2020-03-24หากคุณเคยเรียน Python มาสักระยะแล้ว คุณต้องเคยเจอ NumPy มาก่อน และคุณต้องสงสัยว่ามันคืออะไรและเหตุใดจึงสำคัญ ในบทช่วย สอน Python Numpy นี้ คุณจะได้เรียนรู้เกี่ยวกับสิ่งเดียวกัน คุณจะได้ทำความเข้าใจ NumPy เช่นเดียวกับอาร์เรย์ NumPy และฟังก์ชันของ NumPy
การมีความเชี่ยวชาญเหนือ Python เป็นสิ่งจำเป็นสำหรับโปรแกรมเมอร์ยุคใหม่ และบทช่วยสอน Python NumPy นี้จะช่วยให้คุณเข้าใจ Python ได้ดีขึ้น มีรายละเอียดค่อนข้างมาก เราแนะนำให้เพิ่มหน้านี้ในบุ๊กมาร์กเพื่อใช้อ้างอิงในอนาคต
เรียนรู้ หลักสูตรออนไลน์วิทยาศาสตร์ข้อมูล จากมหาวิทยาลัยชั้นนำของโลก รับโปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโท เพื่อติดตามอาชีพของคุณอย่างรวดเร็ว
สารบัญ
Python NumPy คืออะไร?
NumPy ย่อมาจาก 'Numeric Python' อย่างที่คุณเดาได้ มันมุ่งเน้นไปที่การดำเนินการเชิงตัวเลขและการคำนวณ Numpy เป็นแพ็คเกจ Python และเป็นไลบรารีหลักสำหรับการคำนวณทางวิทยาศาสตร์ มีอ็อบเจ็กต์และเครื่องมืออาร์เรย์ n มิติเพื่อรวมภาษาที่โดดเด่นอื่นๆ เช่น C คุณสามารถใช้อาร์เรย์ NumPy เป็นคอนเทนเนอร์หลายมิติขนาดใหญ่สำหรับข้อมูลได้
NumPy Array คืออะไร?
อาร์เรย์ NumPy เป็นออบเจ็กต์อาร์เรย์ n มิติที่ยอดเยี่ยม มีแถวและคอลัมน์ และคุณสามารถใช้เพื่อเข้าถึงองค์ประกอบของรายการ Python มีการดำเนินการหลายอย่างที่คุณสามารถทำได้บนอาร์เรย์ NumPy เราได้พูดคุยกันในบทความแล้ว แต่ก่อนหน้านั้น คุณต้องเข้าใจวิธีการติดตั้ง NumPy ในระบบของคุณ หากไม่มีการติดตั้ง คุณจะใช้งานไม่ได้
จะติดตั้ง NumPy ได้อย่างไร?
คุณจะต้องไปที่พรอมต์คำสั่งและป้อน 'pip install numpy' เพื่อติดตั้ง Python NumPy หลังจากการติดตั้งเสร็จสิ้น คุณจะต้องไปที่ IDE และนำเข้า numpy ผ่าน 'import numpy as np' และนั่นคือวิธีที่คุณติดตั้ง Numpy บนระบบของคุณ
คุณสามารถสร้างอาร์เรย์ใน NumPy ได้อย่างง่ายดายผ่านรหัสต่อไปนี้:
1 นำเข้า numpy เป็น np
2 a=np.array([1,2,3])
3 พิมพ์ (ก)
ผลลัพธ์ของโค้ดด้านบน – [1 2 3]
โค้ดด้านบนจะให้อาร์เรย์หนึ่งมิติแก่คุณ ถ้าคุณต้องการสร้างอาร์เรย์หลายมิติ คุณจะต้องเขียนบางอย่างที่คล้ายกับตัวอย่างด้านล่าง:
1 a=np.array([(1,2,3),(4,5,6)])
2 พิมพ์ (ก)
ผลลัพธ์ของโค้ดด้านบน – [[ 1 2 3]
[4 5 6]]
อ่านเพิ่มเติม: 25 แนวคิดและหัวข้อโครงการ Python ที่น่าตื่นเต้นสำหรับผู้เริ่มต้น
ปฏิบัติการใน NumPy
Python NumPy มีการดำเนินการหลายอย่าง พวกเขาทั้งหมดทำหน้าที่เฉพาะ ฟังก์ชันเหล่านี้มีคำอธิบายสั้น ๆ ดังต่อไปนี้:
ขนาดรายการ:
ด้วยความช่วยเหลือของฟังก์ชันนี้ คุณสามารถค้นหาขนาดไบต์ขององค์ประกอบในอาร์เรย์ของคุณได้ ลองดูตัวอย่างต่อไปนี้:
1 นำเข้า numpy เป็น np
2 a = np.array([(1,2,3)])
3 พิมพ์ (a.itemsize)
ผลลัพธ์ของรหัสข้างต้น – 4
เล็กน้อย:
ฟังก์ชัน ndim ช่วยให้คุณค้นหามิติของอาร์เรย์ได้ คุณควรรู้ว่าคุณสามารถมีอาร์เรย์หนึ่งมิติ สองมิติ และสามมิติได้ นี่คือตัวอย่างของฟังก์ชันนี้:
1 นำเข้า numpy เป็น np
2 a = np.array([(1,2,3),(4,5,6)])
3 พิมพ์ (อ.ด.ญ.)
ผลลัพธ์ของโค้ดด้านบน – 2
ก่อร่างใหม่:
ด้วยความช่วยเหลือของการดำเนินการเปลี่ยนรูปร่าง คุณสามารถเปลี่ยนจำนวนแถวและคอลัมน์ที่มีอยู่ในอาร์เรย์ได้ สมมติว่าอาร์เรย์หนึ่งมีสามคอลัมน์และสองแถว คุณสามารถเปลี่ยนรูปร่างเป็น 2 คอลัมน์และ 3 แถวได้ ดูการใช้งานจริงผ่านตัวอย่างต่อไปนี้:
1 นำเข้า numpy เป็น np
2 a = np.array([(8,9,10),(11,12,13)])
3 พิมพ์ (ก)
4a=a.reshape(3,2)
5 พิมพ์ (ก)
ผลลัพธ์ของโค้ดด้านบน – [[ 8 9 10] [11 12 13]] [[ 8 9] [10 11] [12 13]]
หั่น:
เมื่อใช้การแบ่งส่วนข้อมูล คุณจะแยกชุดขององค์ประกอบเฉพาะออกจากอาร์เรย์ที่ต้องการได้ กล่าวอีกนัยหนึ่ง คุณสามารถ 'แบ่ง' อาร์เรย์และรับส่วนหนึ่งของอาร์เรย์นั้นได้ สมมติว่าคุณมีอาร์เรย์และต้องการแยกองค์ประกอบเฉพาะออกจากอาร์เรย์ ให้ทำดังนี้:
1 นำเข้า numpy เป็น np
2 a=np.array([(1,2,3,4),(3,4,5,6)])
3 พิมพ์(a[0,2])
ผลลัพธ์ของรหัสข้างต้น – 3
ในตัวอย่างข้างต้น ดัชนีของอาร์เรย์แรกคือ 0 และสำหรับอาร์เรย์ที่สองคือ 1 ดังนั้นโค้ดจึงระบุว่าควรพิมพ์องค์ประกอบที่สองของอาร์เรย์แรก (ที่มีดัชนี 0) สมมติว่าคุณต้องการองค์ประกอบที่สองจากดัชนีแรกและดัชนีที่ศูนย์ของอาร์เรย์ จากนั้นเราจะใช้รหัสต่อไปนี้:
1 นำเข้า numpy เป็น np
2 a=np.array([(1,2,3,4),(3,4,5,6)])
3 พิมพ์(a[0:,2])
ผลลัพธ์ของรหัสข้างต้น– [3 5]
อ่านเพิ่มเติม: เงินเดือนนักพัฒนา Python ในอินเดีย
ประเภท:
ด้วยฟังก์ชัน dtype คุณมีตัวเลือกในการค้นหาประเภทข้อมูลขององค์ประกอบของอาร์เรย์ มันให้ชนิดข้อมูลและขนาดขององค์ประกอบที่ต้องการ ดูตัวอย่างต่อไปนี้เพื่อดูว่ามันทำงานอย่างไร:
1 นำเข้า numpy เป็น np
2 a = np.array([(1,2,3)])
3 พิมพ์ (a.dtype)
ผลลัพธ์ของโค้ดด้านบน – int32
คุณสามารถใช้ฟังก์ชัน 'รูปร่าง' และ 'ขนาด' เพื่อค้นหารูปร่างและขนาดของอาร์เรย์ได้เช่นกัน ดูตัวอย่างของบทช่วยสอน Python NumPy ของเราเพื่อทำความเข้าใจฟังก์ชันเหล่านี้อย่างถูกต้อง:
1 นำเข้า numpy เป็น np
2 a = np.array([(1,2,3,4,5,6)])
3 พิมพ์ (a.size)
4 พิมพ์ (a.รูปร่าง)
ผลลัพธ์ของรหัสข้างต้น – 6 (1,6)
ลินสเปซ :
ด้วยความช่วยเหลือของการดำเนินการ linspace คุณสามารถกระจายตัวเลขที่เว้นระยะเท่าๆ กันตามช่วงเวลาที่คุณกล่าวถึง ฟังก์ชัน linspace มีการใช้งาน และนี่คือตัวอย่างวิธีการใช้งาน:
1 นำเข้า numpy เป็น np

2 a=np.linspace(1,3,10)
3 พิมพ์ (ก)
ผลลัพธ์ของรหัสข้างต้น– [ 1. 1.222222222 1.44444444 1.66666667 1.88888889 2.11111111 2.333333333 2.55555556 2.77777778 3. ]
รากที่สองและส่วนเบี่ยงเบนมาตรฐาน
Python NumPy ช่วยให้คุณสามารถดำเนินการทางคณิตศาสตร์ต่างๆ และหนึ่งในการดำเนินการเหล่านั้นได้มาจากรากที่สองของอาร์เรย์ที่ต้องการ คุณยังสามารถรับค่าเบี่ยงเบนมาตรฐานของอาร์เรย์ NumPy ของคุณได้ นี่คือตัวอย่างโดยละเอียดที่จะช่วยคุณในเรื่องนี้:
1 นำเข้า numpy เป็น np
2 a=np.array([(1,2,3),(3,4,5,)])
3 พิมพ์ (np.sqrt(a))
4 พิมพ์ (np.std(a))
ผลลัพธ์ของรหัสข้างต้น– [[ 1. 1.41421356 1.73205081]
[ 1.73205081 2. 2.23606798]]
1.29099444874
สูงสุด/นาที
คุณสามารถค้นหาค่าสูงสุด ค่าต่ำสุด และผลรวมของอาร์เรย์ได้ผ่านการดำเนินการเฉพาะ การหาค่าสูงสุดและต่ำสุดสามารถช่วยคุณได้มากในการดำเนินการที่ซับซ้อน ต่อไปนี้คือวิธีที่คุณสามารถหาค่าสูงสุด ค่าต่ำสุด และผลรวมของอาร์เรย์ที่คุณมีได้:
1 นำเข้า numpy เป็น np
2 a= np.array([1,2,3])
3 พิมพ์ (a.min())
4 พิมพ์ (a.max())
5 พิมพ์ (a.sum())
ผลลัพธ์ของรหัสข้างต้น – 1 3 6
การวางซ้อนแนวนอนและแนวตั้ง
คุณอาจต้องการรวมสองอาร์เรย์เข้าด้วยกันแต่ไม่ต้องเพิ่มเข้าไป เช่น คุณอาจต้องการเชื่อมอาร์เรย์เข้าด้วยกัน เพื่อจุดประสงค์นี้ คุณสามารถวางซ้อนกันในแนวตั้งหรือแนวนอนก็ได้ นี่คือตัวอย่างโค้ดสำหรับการทำเช่นนั้น:
1 นำเข้า numpy เป็น np
2 x= np.array([(1,2,3),(3,4,5)])
3 ปี= np.array([(1,2,3),(3,4,5)])
4 พิมพ์(np.vstack((x,y)))
5 พิมพ์(np.hstack((x,y)))
ผลลัพธ์ของโค้ดด้านบน – [[1 2 3] [3 4 5] [1 2 3] [3 4 5]]
[[1 2 3 1 2 3] [3 4 5 3 4 5]]
อ่านเพิ่มเติม: Operators in Python: A Beginner's Guide to Arithmetic
ส่วนที่เพิ่มเข้าไป
คุณสามารถเพิ่มอาร์เรย์ NumPy ได้เช่นกัน นอกเหนือจากการบวก คุณยังสามารถทำการลบ หาร และคูณเมทริกซ์สองเมทริกซ์ นี่คือตัวอย่างการเพิ่มใน Python NumPy:
1 นำเข้า numpy เป็น np
2 x= np.array([(1,2,3),(3,4,5)])
3 ปี= np.array([(1,2,3),(3,4,5)])
4 พิมพ์(x+y)
ผลลัพธ์ของโค้ดด้านบน – [[ 2 4 6] [ 6 8 10]]
เช่นเดียวกับที่เรากล่าวไว้ก่อนหน้านี้ คุณสามารถดำเนินการทางคณิตศาสตร์อื่นๆ บนอาร์เรย์ NumPy ได้เช่นกัน ซึ่งรวมถึงการลบและการหาร โดยใช้วิธีดังนี้:
1 นำเข้า numpy เป็น np
2 x= np.array([(1,2,3),(3,4,5)])
3 ปี= np.array([(1,2,3),(3,4,5)])
4 พิมพ์(xy)
5 พิมพ์(x*y)
6 พิมพ์(x/y)
ผลลัพธ์ของโค้ดด้านบน– [[0 0 0] [0 0 0]]
[[ 1 4 9] [ 9 16 25]]
[[ 1. 1. 1.] [ 1. 1. 1.]]
ravel
การดำเนินการ ravel ช่วยให้คุณแปลงอาร์เรย์ NumPy เป็น ravel ซึ่งเป็นคอลัมน์เดียว นี่คือตัวอย่าง:
1 นำเข้า numpy เป็น np
2 x= np.array([(1,2,3),(3,4,5)])
3 พิมพ์(x.ravel())
ผลลัพธ์ของรหัส – [ 1 2 3 3 4 5]
บทสรุป
เราแน่ใจว่าคุณได้พบบทช่วยสอน Python NumPy นี้ค่อนข้างให้ข้อมูล ถึงตอนนี้ คุณคงเข้าใจแล้วว่า Python NumPy คืออะไรและมีหน้าที่อะไร หากคุณมีคำถามเพิ่มเติมเกี่ยวกับหัวข้อนี้ โปรดแจ้งให้เราทราบ
หากคุณอยากเรียนรู้เกี่ยวกับวิทยาศาสตร์ข้อมูล ลองดู โปรแกรม Executive PG ของ IIIT-B & upGrad ใน Data Science ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 10 รายการ เวิร์กช็อปภาคปฏิบัติจริง การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม 1 -on-1 พร้อมที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ
การใช้ NumPy ใน Python คืออะไร?
NumPy เป็นไลบรารี่ที่ใช้กันอย่างแพร่หลายสำหรับการทำงานกับอาร์เรย์ใน Python มีฟังก์ชันบางอย่างใน NumPy ที่ช่วยให้คุณทำงานในโดเมนของเมทริกซ์ การแปลงฟูริเยร์ และพีชคณิตเชิงเส้นได้
รายการถูกใช้ใน Python สำหรับวัตถุประสงค์ของอาร์เรย์ ข้อเสียอย่างเดียวที่นี่คือการประมวลผลค่อนข้างช้า NumPy มีความสามารถในการจัดเตรียมอ็อบเจ็กต์อาร์เรย์ ซึ่งพบว่าเร็วกว่า 50x เมื่อเทียบกับรายการ Python แบบเดิม มีฟังก์ชันสนับสนุนมากมายที่มาพร้อมกับอ็อบเจ็กต์อาร์เรย์ใน NumPy เพื่อให้การทำงานง่ายขึ้นและง่ายขึ้นมาก เมื่อใดก็ตามที่เป็นเรื่องของความเร็วและทรัพยากรในวิทยาศาสตร์ข้อมูล อาร์เรย์จะได้รับการพิจารณา และนั่นคือเมื่อ NumPy เข้ามามีบทบาท
วิธีที่ดีที่สุดในการเรียนรู้ NumPy คืออะไร?
เมื่อพูดถึงแพ็คเกจพื้นฐานสำหรับการทำงานใน Python NumPy จะรวมอยู่ในรายการ NumPy เป็นไลบรารี่ที่รู้จักกันดีใน Python เนื่องจากมีคุณสมบัติไดนามิกหลายอย่าง เช่น ไวยากรณ์ระดับสูง ความยืดหยุ่นของ Python ด้วยความเร็วของโค้ดที่คอมไพล์ เครื่องมือคำนวณเชิงตัวเลข และอื่นๆ
เมื่อคุณเริ่มเรียนรู้ NumPy คุณควรอ่านบทช่วยสอนออนไลน์และอ่านเอกสารทางการของ NumPy สิ่งนี้จะช่วยวางความรู้พื้นฐานก่อนที่คุณจะก้าวไปสู่แนวคิดขั้นสูง หลังจากนั้น คุณสามารถใช้แหล่งข้อมูลอื่นๆ เช่น บทช่วยสอนของ YouTube หรือแม้แต่เรียนหลักสูตรเพื่อรับความรู้เชิงลึกเกี่ยวกับการทำงานกับ NumPy ใน Python
อาร์เรย์ NumPy เร็วกว่าหรือเป็นรายการหรือไม่
เป็นที่ทราบกันดีว่าอาร์เรย์ NumPy เป็นทางเลือกที่เร็วกว่ารายการ Python แบบเดิม ไม่ว่าคุณต้องการดำเนินการใดกับข้อมูล คุณจะพบว่าอาร์เรย์ NumPy มีความแม่นยำมากกว่ารายการ
เมื่อขนาดของอาร์เรย์เพิ่มขึ้น ความเร็วของ NumPy จะเร็วขึ้น 30 เท่าเมื่อเทียบกับรายการ Python ดังนั้น แม้ว่าคุณจะทำการลบอย่างง่าย คุณจะสังเกตเห็นว่าอาร์เรย์ NumPy นั้นรวดเร็ว เนื่องจากอาร์เรย์ NumPy ถูกบีบอัดอย่างหนาแน่นเนื่องจากเป็นประเภทเดียวกัน จึงมีแนวโน้มที่จะล้างหน่วยความจำได้เร็วขึ้นด้วย