คำถามที่พบบ่อยที่สุด NumPy คำถามสัมภาษณ์และคำตอบ [สำหรับ Freshers]
เผยแพร่แล้ว: 2020-12-29หากคุณกำลังมองหาอาชีพที่รุ่งโรจน์ในแวดวงเทคโนโลยี คุณรู้อยู่แล้วว่าวุฒิการศึกษาใน NumPy เป็นหนึ่งในทักษะที่เป็นที่ต้องการตัวมากที่สุด ท้ายที่สุด NumPy ถูกสร้างขึ้นบนมาตรฐานโดยพฤตินัยของอาร์เรย์การคำนวณ
ต่อไปนี้เป็นรายการคำถามและคำตอบในการสัมภาษณ์ NumPy ที่ถามบ่อยซึ่งคุณอาจต้องการค้นหาก่อนที่คุณจะปรากฏตัวในการสัมภาษณ์ครั้งต่อไป
คำถามและคำตอบสัมภาษณ์ 15 อันดับแรกของ NumPy
คำถามที่ 1: NumPy คืออะไร?
NumPy เป็นแพ็คเกจโอเพ่นซอร์สอเนกประสงค์อเนกประสงค์ที่ใช้สำหรับการประมวลผลอาร์เรย์ มันสั้นของ Numerical Python เป็นที่รู้จักในด้านประสิทธิภาพระดับไฮเอนด์ด้วยออบเจ็กต์อาร์เรย์ N-dimensional อันทรงพลังและเครื่องมือที่โหลดไว้เพื่อทำงานกับอาร์เรย์ แพ็คเกจนี้เป็นส่วนขยายของ Python และใช้เพื่อดำเนินการคำนวณทางวิทยาศาสตร์และฟังก์ชั่นการออกอากาศอื่นๆ
NumPy ใช้งานง่าย มีประสิทธิภาพสูงสุด และมีความยืดหยุ่นสูง
ไม่จำเป็นต้องมีประสบการณ์การเข้ารหัส การสนับสนุนด้านอาชีพ 360° PG Diploma in Machine Learning & AI จาก IIIT-B และ upGradคำถามที่ 2: การใช้ NumPy คืออะไร?
ไลบรารีตัวเลขแบบโอเพนซอร์สบน Python รองรับอาร์เรย์หลายมิติและมีโครงสร้างข้อมูลเมทริกซ์ การดำเนินการทางคณิตศาสตร์ประเภทต่างๆ สามารถทำได้บนอาร์เรย์โดยใช้ NumPy ซึ่งรวมถึงการดำเนินการเกี่ยวกับตรีโกณมิติเช่นเดียวกับการคำนวณทางสถิติและพีชคณิต Numeric และ Numarray เป็นส่วนขยายของ NumPy
คำถามที่ 3: เหตุใด NumPy จึงชอบใช้เครื่องมือการเขียนโปรแกรมอื่นๆ เช่น Idl, Matlab, Octave หรือ Yorick
NumPy เป็นไลบรารี่ประสิทธิภาพสูงในภาษาการเขียนโปรแกรม Python ที่ช่วยให้สามารถคำนวณทางวิทยาศาสตร์ได้ เป็นที่นิยมสำหรับ Idl, Matlab, Octave หรือ Yorick เพราะเป็นโอเพ่นซอร์สและฟรี นอกจากนี้ เนื่องจากมันใช้ Python ซึ่งเป็นภาษาการเขียนโปรแกรมเอนกประสงค์ มันจึงให้คะแนนมากกว่าภาษาโปรแกรมทั่วไปในการเชื่อมต่อล่ามของ Python กับ C/C++ และโค้ด Fortran
NumPy รองรับอาร์เรย์และเมทริกซ์หลายมิติ และช่วยในการดำเนินการทางคณิตศาสตร์ที่ซับซ้อนกับอาร์เรย์เหล่านี้
คำถามที่ 4: ฟีเจอร์ต่างๆ ของ NumPy คืออะไร?
NumPy เป็นแพ็คเกจโอเพ่นซอร์สที่ทรงพลังซึ่งใช้สำหรับการประมวลผลอาร์เรย์ NumPy มีคุณสมบัติที่มีประโยชน์มากมาย พวกเขาเป็น:
- ประกอบด้วยวัตถุอาร์เรย์ N มิติ
- มันโต้ตอบกันได้ เข้ากันได้กับฮาร์ดแวร์และแพลตฟอร์มคอมพิวเตอร์มากมาย
- ทำงานได้ดีมากกับไลบรารีอาร์เรย์ กระจัดกระจายกระจายหรือ GPU
- ความสามารถในการทำหน้าที่ที่ซับซ้อน (แพร่ภาพ)
- เครื่องมือที่เปิดใช้งานการทำงานร่วมกับ C หรือ C++ และรหัส Fortran
- ความสามารถในการทำงานทางคณิตศาสตร์ระดับสูง เช่น สถิติ การแปลงฟูริเยร์ การเรียงลำดับ การค้นหา พีชคณิตเชิงเส้น ฯลฯ
- นอกจากนี้ยังสามารถทำหน้าที่เป็นคอนเทนเนอร์หลายมิติสำหรับข้อมูลทั่วไป
- รองรับการคำนวณทางวิทยาศาสตร์และการเงิน
คำถามที่ 5: คุณจะติดตั้ง NumPy บน Windows ได้อย่างไร
ในการติดตั้ง NumPy บน Windows คุณต้องดาวน์โหลดและติดตั้ง Python บนคอมพิวเตอร์ของคุณก่อน
ทำตามขั้นตอนด้านล่างเพื่อติดตั้ง Python:
ขั้นตอนที่ 1: ไปที่หน้าอย่างเป็นทางการของ Python และดาวน์โหลดไบนารีที่ปฏิบัติการได้ของ Python และ Python บน Windows 10/8/7 . ของคุณ
ขั้นตอนที่ 2: เปิดตัวติดตั้งโปรแกรมปฏิบัติการ Python แล้วกด Run
ขั้นตอนที่ 3: ติดตั้ง pip บนระบบ Windows ของคุณ
เมื่อใช้ pip คุณสามารถติดตั้ง NumPy ใน Python ด้านล่างนี้คือขั้นตอนการติดตั้งของ NumPy:
ขั้นตอนที่ 1: เริ่มเทอร์มินัล
ขั้นตอนที่ 2: พิมพ์ pip
ขั้นตอนที่ 3: ติดตั้ง NumPy
คำถามที่ 6 ระบุข้อดีของ NumPy Arrays ที่มีมากกว่า (ซ้อนกัน) รายการ Python หรือไม่
รายการของ Python แม้ว่าคอนเทนเนอร์จะมีประสิทธิภาพอย่างมหาศาลซึ่งสามารถทำงานได้หลายอย่าง แต่ก็มีข้อจำกัดหลายประการเมื่อเปรียบเทียบกับอาร์เรย์ NumPy เป็นไปไม่ได้ที่จะดำเนินการเวกเตอร์ซึ่งรวมถึงการบวกและการคูณด้วยองค์ประกอบ
พวกเขายังต้องการให้ Python เก็บข้อมูลประเภทของทุกองค์ประกอบเนื่องจากรองรับวัตถุประเภทต่างๆ ซึ่งหมายความว่าต้องดำเนินการรหัสการจัดส่งประเภททุกครั้งที่มีการดำเนินการกับองค์ประกอบ นอกจากนี้ การวนซ้ำแต่ละครั้งจะต้องผ่านการตรวจสอบประเภทและต้องมีการทำบัญชี Python API ส่งผลให้มีการดำเนินการน้อยมากโดย C ลูป
คำถามที่ 7: ระบุขั้นตอนในการสร้างอาร์เรย์ 1D และ 2D array
อาร์เรย์หนึ่งมิติถูกสร้างขึ้นดังนี้:
num=[1,2,3]
num = np.array(จำนวน)
พิมพ์(“1d อาร์เรย์: “,จำนวน)
อาร์เรย์สองมิติถูกสร้างขึ้นดังนี้:
num2=[[1,2,3],[4,5,6]]
num2 = np.array(หมายเลข2)
พิมพ์(“\n2d อาร์เรย์: “,num2)
เช็คเอาท์: คำถามสัมภาษณ์วิทยาศาสตร์ข้อมูล
คำถามที่ 8: คุณจะสร้างอาร์เรย์ 3 มิติได้อย่างไร
อาร์เรย์สามมิติถูกสร้างขึ้นดังนี้:
num3=[[[1,2,3],[4,5,6],[7,8,9]]]
num3 = np.array(num3)
พิมพ์(“\n3d อาร์เรย์: “,num3)
คำถามที่ 9: ขั้นตอนในการใช้รูปร่างสำหรับอาร์เรย์ 1D, อาร์เรย์ 2D และอาร์เรย์ 3D/ND ตามลำดับมีอะไรบ้าง
อาร์เรย์ 1D:
num=[1,2,3] ถ้าไม่เติม
พิมพ์ ('\nshpae จาก 1d ',num.shape)
อาร์เรย์ 2 มิติ:
num2=[[1,2,3],[4,5,6]] ถ้าไม่เพิ่ม
พิมพ์ ('\nshpae ของ 2d ',num2.shape)
อาร์เรย์ 3 มิติหรือ ND:
num3=[[[1,2,3],[4,5,6],[7,8,9]]] ถ้าไม่เพิ่ม
พิมพ์ ('\nshpae ของ 3d ',num3.shape)
คำถามที่ 10: คุณจะระบุประเภทข้อมูลของอาร์เรย์ NumPy ที่กำหนดได้อย่างไร
ใช้ลำดับของรหัสต่อไปนี้เพื่อระบุประเภทข้อมูลของอาร์เรย์ NumPy

พิมพ์('\n ชนิดข้อมูล num 1 ',num.dtype)
พิมพ์ ('\n ชนิดข้อมูล num 2 ',num2.dtype)
พิมพ์ ('\n ชนิดข้อมูล num 3 ',num3.dtype)
คำถามที่ 11. ขั้นตอนในการนับจำนวนครั้งที่ค่าที่กำหนดปรากฏในอาร์เรย์ของจำนวนเต็มคืออะไร?
คุณสามารถนับจำนวนครั้งที่ค่าที่ระบุปรากฏขึ้นโดยใช้ฟังก์ชัน bincount() ควรสังเกตว่าฟังก์ชัน bincount() ยอมรับจำนวนเต็มบวกหรือนิพจน์บูลีนเป็นอาร์กิวเมนต์ ไม่สามารถใช้จำนวนเต็มลบได้
ใช้ NumPy.bincount() อาร์เรย์ผลลัพธ์คือ
>>> arr = NumPy.array([0, 5, 4, 0, 4, 4, 3, 0, 0, 5, 2, 1, 1, 9])
>>> NumPy.bincount(arr)
คำถามที่ 12. คุณจะตรวจสอบอาร์เรย์ที่ว่างเปล่า (zero Element) ได้อย่างไร?
หากตัวแปรเป็นอาร์เรย์ คุณสามารถตรวจสอบอาร์เรย์ว่างได้โดยใช้แอตทริบิวต์ size อย่างไรก็ตาม เป็นไปได้ที่ตัวแปรจะเป็นรายการหรือประเภทลำดับ ในกรณีนี้ คุณสามารถใช้ len()
วิธีที่ดีกว่าในการตรวจสอบองค์ประกอบศูนย์คือแอตทริบิวต์ size นี้เป็นเพราะ:
>>> a = NumPy.zeros((1,0))
>>> ก.ขนาด
0
ในทางตรงกันข้าม
>>> เลน (ก)
1
คำถามที่ 13: อะไรคือขั้นตอนในการค้นหาดัชนีของอาร์เรย์บน NumPy โดยที่เงื่อนไขบางอย่างเป็นจริง
คุณสามารถใช้ฟังก์ชัน numpy.nonzero() เพื่อค้นหาดัชนีหรืออาร์เรย์ คุณยังสามารถใช้เมธอดที่ไม่ใช่ศูนย์ () เพื่อทำเช่นนั้นได้
ในโปรแกรมต่อไปนี้ เราจะนำอาร์เรย์ a โดยที่เงื่อนไขคือ a > 3 ซึ่งจะส่งคืนอาร์เรย์บูลีน เรารู้ว่าเป็นเท็จใน Python และ NumPy แสดงเป็น 0 ดังนั้น np.nonzero(a > 3) จะส่งคืนดัชนีของอาร์เรย์ a โดยที่เงื่อนไขเป็น True
>>> นำเข้า numpy เป็น np
>>> a = np.array([[1,2,3],[4,5,6],[7,8,9]])
>>>>>3
อาร์เรย์ ([[เท็จ, เท็จ, เท็จ],
[ จริง จริง จริง ],
[ จริง จริง จริง ]] dtype=bool)
>>> np.ไม่ใช่ศูนย์(a > 3)
(อาร์เรย์([1, 1, 1, 2, 2, 2]), อาร์เรย์([0, 1, 2, 0, 1, 2]))
คุณยังสามารถเรียกเมธอดที่ไม่ใช่ศูนย์ () ของอาร์เรย์บูลีนได้
>>> (a > 3).nonzero()
(อาร์เรย์([1, 1, 1, 2, 2, 2]), อาร์เรย์([0, 1, 2, 0, 1, 2]))
อ่าน: Dataframe ใน Apache PySpark: บทช่วยสอนที่ครอบคลุม
คำถามที่ 14: แสดงด้านล่างเป็นอินพุตอาร์เรย์ NumPy ลบคอลัมน์ที่สองและแทนที่ด้วยคอลัมน์ใหม่ที่ระบุด้านล่าง
นำเข้า NumPy
sampleArray = NumPy.array([[34,43,73],[82,22,12],[53,94,66]])
newColumn = NumPy.array([[10,10,10]])
ผลผลิตที่คาดหวัง :
การพิมพ์ต้นฉบับอาร์เรย์
[[34 43 73]
[82 22 12]
[53 94 66]]
อาร์เรย์หลังจากลบคอลัมน์ 2 บนแกน 1
[[34 73]
[82 12]
[53 66]]
อาร์เรย์หลังจากแทรกคอลัมน์ 2 บนแกน 1
[[34 10 73]
[82 10 12]
[53 10 66]]
วิธีแก้ไข :
นำเข้า NumPy
พิมพ์("การพิมพ์อาร์เรย์ต้นฉบับ")
sampleArray = NumPy.array([[34,43,73],[82,22,12],[53,94,66]])
พิมพ์ (sampleArray)
พิมพ์ (“อาร์เรย์หลังจากลบคอลัมน์ 2 บนแกน 1”)
sampleArray = NumPy.delete (sampleArray , 1, แกน = 1)
พิมพ์ (sampleArray)
arr = NumPy.array([[10,10,10]])
พิมพ์("อาร์เรย์หลังจากแทรกคอลัมน์ 2 บนแกน 1")
sampleArray = NumPy.insert(sampleArray , 1, arr, แกน = 1)
พิมพ์ (sampleArray)
การรับรองขั้นสูงของ Data Science, พันธมิตรจ้างงานมากกว่า 250 ราย, การเรียนรู้มากกว่า 300 ชั่วโมง, 0% EMIวิธีแก้ไข :
นำเข้า NumPy
พิมพ์("การพิมพ์อาร์เรย์ต้นฉบับ")
sampleArray = NumPy.array([[34,43,73],[82,22,12],[53,94,66]])
พิมพ์ (sampleArray)
พิมพ์ (“อาร์เรย์หลังจากลบคอลัมน์ 2 บนแกน 1”)
sampleArray = NumPy.delete (sampleArray , 1, แกน = 1)
พิมพ์ (sampleArray)
arr = NumPy.array([[10,10,10]])
พิมพ์("อาร์เรย์หลังจากแทรกคอลัมน์ 2 บนแกน 1")
sampleArray = NumPy.insert(sampleArray , 1, arr, แกน = 1)
พิมพ์ (sampleArray)
บทสรุป
เราหวังว่าดังกล่าวข้างต้น คำถามสัมภาษณ์ NumPy จะช่วยคุณเตรียมความพร้อมสำหรับการสัมภาษณ์ที่จะเกิดขึ้น หากคุณกำลังมองหาหลักสูตรที่สามารถช่วยให้คุณเข้าใจภาษา Python upGrad อาจเป็นแพลตฟอร์มที่ดีที่สุด
หากคุณอยากเรียนรู้เกี่ยวกับวิทยาศาสตร์ข้อมูล ลองดูโปรแกรมวิทยาศาสตร์ข้อมูลออนไลน์ของ IIIT-B และ upGrad ซึ่งสร้างขึ้นสำหรับมืออาชีพที่ทำงานและมีกรณีศึกษาและโครงการมากกว่า 10 รายการ เวิร์กช็อปภาคปฏิบัติจริง การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม แบบตัวต่อตัว -1 พร้อมที่ปรึกษาในอุตสาหกรรม การเรียนรู้มากกว่า 400 ชั่วโมงและความช่วยเหลือด้านงานกับบริษัทชั้นนำ
เราหวังว่าสิ่งนี้จะช่วยได้ ขอให้โชคดีในการสัมภาษณ์ของคุณ!
