คำถามติดแท็ก numpy-ndarray

Numpy Ndarray หมายถึงประเภทอาร์เรย์ N มิติที่อธิบายถึงคอลเล็กชันประเภทเดียวกันในไลบรารี Python NumPy ใช้แท็กนี้สำหรับคำถามที่เกี่ยวข้องกับประเภทอาร์เรย์นี้

16
ฉันจะรับดัชนีค่าสูงสุด N ในอาร์เรย์ NumPy ได้อย่างไร
NumPy np.argmaxเสนอวิธีที่จะได้ดัชนีของค่าสูงสุดของอาร์เรย์ผ่าน ฉันต้องการสิ่งที่คล้ายกัน แต่คืนค่าดัชนีของNค่าสูงสุด ตัวอย่างเช่นถ้าฉันมีอาร์เรย์[1, 3, 2, 4, 5], function(array, n=3)จะกลับมาดัชนีซึ่งสอดคล้องกับองค์ประกอบ[4, 3, 1][5, 4, 3]

5
ข้อดีของ NumPy ในรายการ Python ทั่วไปคืออะไร
ข้อดีของNumPyในรายการ Python ทั่วไปคืออะไร ฉันมีซีรี่ส์ตลาดการเงินประมาณ 100 ชุดและฉันจะสร้างคิวบ์อาร์เรย์ที่มีขนาด 100x100x100 = 1 ล้านเซลล์ ฉันจะถดถอย (3 ตัวแปร) แต่ละ x ด้วยแต่ละ y และ z เพื่อเติมอาร์เรย์ด้วยข้อผิดพลาดมาตรฐาน ฉันได้ยินมาว่าสำหรับ "matrices ขนาดใหญ่" ฉันควรใช้ NumPy ซึ่งต่างจากรายการ Python สำหรับเหตุผลด้านประสิทธิภาพและความสามารถในการปรับขยายได้ สิ่งที่ฉันรู้ว่ารายการหลามและพวกเขาดูเหมือนจะทำงานให้ฉัน ฉันจะได้รับประโยชน์อะไรบ้างหากฉันย้ายไปที่ NumPy ถ้าฉันมี 1,000 ซีรี่ส์ (นั่นคือเซลล์จุดลอยตัว 1 พันล้านก้อน)

9
-1 หมายความว่าอย่างไรในการปรับรูปร่างแบบ numpy
เมทริกซ์ numpy สามารถปรับเปลี่ยนเป็นเวกเตอร์โดยใช้ฟังก์ชัน reshape กับพารามิเตอร์ -1 แต่ฉันไม่รู้ว่า -1 หมายถึงอะไรที่นี่ ตัวอย่างเช่น: a = numpy.matrix([[1, 2, 3, 4], [5, 6, 7, 8]]) b = numpy.reshape(a, -1) ผลลัพธ์ของbคือ:matrix([[1, 2, 3, 4, 5, 6, 7, 8]]) ไม่มีใครรู้ว่า -1 หมายถึงที่นี่? และดูเหมือนว่าหลามกำหนด -1 ความหมายหลายอย่างเช่น: array[-1]หมายถึงองค์ประกอบสุดท้าย คุณสามารถให้คำอธิบายได้ไหม?

6
จุดประสงค์ของ meshgrid ใน Python / NumPy คืออะไร?
บางคนสามารถอธิบายให้ฉันฟังได้ว่าอะไรคือจุดประสงค์ของmeshgridฟังก์ชั่นใน Numpy? ฉันรู้ว่ามันสร้างกริดพิกัดบางอย่างสำหรับการวางแผน แต่ฉันไม่เห็นประโยชน์โดยตรงของมัน ฉันกำลังศึกษา "Python Machine Learning" จาก Sebastian Raschka และเขาใช้เพื่อวางแผนขอบเขตการตัดสินใจ เห็นอินพุต 11 ที่นี่ ฉันได้ลองใช้รหัสนี้จากเอกสารอย่างเป็นทางการแล้ว แต่ผลลัพธ์ก็ไม่สมเหตุสมผลสำหรับฉัน x = np.arange(-5, 5, 1) y = np.arange(-5, 5, 1) xx, yy = np.meshgrid(x, y, sparse=True) z = np.sin(xx**2 + yy**2) / (xx**2 + yy**2) h = plt.contourf(x,y,z) กรุณาถ้าเป็นไปได้แสดงตัวอย่างจริงมากมายให้ฉันด้วย

3
อะไรคือความแตกต่างระหว่างฟังก์ชั่นการแบนและ ravel ในแบบ numpy?
import numpy as np y = np.array(((1,2,3),(4,5,6),(7,8,9))) OUTPUT: print(y.flatten()) [1 2 3 4 5 6 7 8 9] print(y.ravel()) [1 2 3 4 5 6 7 8 9] ฟังก์ชั่นทั้งสองกลับรายการเดียวกัน แล้วความต้องการของสองฟังก์ชันที่แตกต่างกันคืออะไรที่ทำหน้าที่เดียวกัน

6
การต่อเชื่อม NumPy อาร์เรย์หนึ่งมิติสองมิติ
ฉันมีสองอาร์เรย์ง่ายหนึ่งมิติในNumPy ฉันควรจะสามารถที่จะเชื่อมพวกเขาโดยใช้numpy.concatenate แต่ฉันได้รับข้อผิดพลาดสำหรับรหัสด้านล่างนี้: TypeError: เฉพาะอาร์เรย์ความยาว 1 เท่านั้นที่สามารถแปลงเป็นสเกลาร์ Python รหัส import numpy a = numpy.array([1, 2, 3]) b = numpy.array([5, 6]) numpy.concatenate(a, b) ทำไม?

8
วิธีการแปลงภาพ PIL เป็นอาร์เรย์ numpy?
เอาล่ะฉันกำลังเล่นกับการแปลงวัตถุรูปภาพ PIL ไปมาเป็นอาร์เรย์ที่มีจำนวนมากดังนั้นฉันจึงสามารถแปลงพิกเซลได้เร็วขึ้นโดยการแปลงพิกเซลกว่าPixelAccessวัตถุของ PIL ฉันพบวิธีวางข้อมูลพิกเซลในอาร์เรย์แบบสามมิติที่มีประโยชน์โดย: pic = Image.open("foo.jpg") pix = numpy.array(pic.getdata()).reshape(pic.size[0], pic.size[1], 3) แต่ดูเหมือนว่าฉันจะไม่สามารถหาวิธีโหลดมันกลับเข้าไปในวัตถุ PIL ได้หลังจากที่ฉันได้ทำการแปลงที่ยอดเยี่ยมทั้งหมดแล้ว ฉันตระหนักถึงputdata()วิธีการ แต่ดูเหมือนจะไม่สามารถทำให้มันทำงานได้


16
วิธีที่ดีกว่าในการสลับสองอาร์เรย์ numpy พร้อมเพรียง
ฉันมีอาร์เรย์ numpy สองตัวที่มีรูปร่างต่างกัน แต่มีความยาวเท่ากัน (มิตินำหน้า) ฉันต้องการสับเปลี่ยนแต่ละองค์ประกอบเช่นนั้นองค์ประกอบที่เกี่ยวข้องยังคงสอดคล้องกัน - เช่นสับเปลี่ยนพวกเขาพร้อมกันด้วยความเคารพดัชนีชั้นนำของพวกเขา รหัสนี้ใช้งานได้และแสดงเป้าหมายของฉัน: def shuffle_in_unison(a, b): assert len(a) == len(b) shuffled_a = numpy.empty(a.shape, dtype=a.dtype) shuffled_b = numpy.empty(b.shape, dtype=b.dtype) permutation = numpy.random.permutation(len(a)) for old_index, new_index in enumerate(permutation): shuffled_a[new_index] = a[old_index] shuffled_b[new_index] = b[old_index] return shuffled_a, shuffled_b ตัวอย่างเช่น: >>> a = numpy.asarray([[1, 1], [2, 2], [3, …

19
แปลงอาเรย์ของดัชนีไปเป็นอาเรย์ numpy ที่เข้ารหัสแล้ว 1 ครั้ง
สมมติว่าฉันมีอาร์เรย์ numpy 1d a = array([1,0,3]) ฉันต้องการเข้ารหัสเป็นอาร์เรย์ 2d 1-hot b = array([[0,1,0,0], [1,0,0,0], [0,0,0,1]]) มีวิธีที่รวดเร็วในการทำเช่นนี้? เร็วกว่าการวนซ้ำaเพื่อตั้งค่าองค์ประกอบของbนั่นคือ

11
ฉันจะคำนวณเปอร์เซ็นไทล์ด้วย python / numpy ได้อย่างไร
มีวิธีที่สะดวกในการคำนวณเปอร์เซนต์ไทล์สำหรับลำดับหรืออาร์เรย์มิติเดียวหรือไม่? ฉันกำลังมองหาบางสิ่งที่คล้ายกับฟังก์ชันเปอร์เซ็นต์ไทล์ของ Excel ฉันดูในการอ้างอิงสถิติของ NumPy และไม่พบสิ่งนี้ ทั้งหมดที่ฉันสามารถหาได้คือค่ามัธยฐาน (เปอร์เซ็นไทล์ที่ 50) แต่ไม่ใช่สิ่งที่เฉพาะเจาะจงมากขึ้น


4
numpy.newaxis ทำงานอย่างไรและใช้งานเมื่อใด?
เมื่อฉันลอง numpy.newaxis ผลลัพธ์ให้เฟรมพล็อต 2 มิติพร้อมแกน x จาก 0 ถึง 1 อย่างไรก็ตามเมื่อฉันลองใช้numpy.newaxisเพื่อตัดเวกเตอร์ vector[0:4,] [ 0.04965172 0.04979645 0.04994022 0.05008303] vector[:, np.newaxis][0:4,] [[ 0.04965172] [ 0.04979645] [ 0.04994022] [ 0.05008303]] มันเป็นสิ่งเดียวกันยกเว้นว่าจะเปลี่ยนเวกเตอร์แถวเป็นเวกเตอร์คอลัมน์หรือไม่ โดยทั่วไปแล้วการใช้คืออะไรnumpy.newaxisและในสถานการณ์ใดที่เราควรใช้

8
Numpy: รับดัชนีองค์ประกอบของอาร์เรย์ 1d เป็นอาร์เรย์ 2d
ฉันมีอาร์เรย์ numpy เช่นนี้: [1 2 2 0 0 1 3 5] เป็นไปได้ที่จะได้รับดัชนีองค์ประกอบเป็นอาร์เรย์ 2d หรือไม่ เช่นคำตอบสำหรับการป้อนข้อมูลข้างต้นจะเป็น[[3 4], [0 5], [1 2], [6], [], [7]] ปัจจุบันฉันต้องวนค่าที่แตกต่างกันและเรียกnumpy.where(input == i)หาค่าแต่ละค่าซึ่งมีประสิทธิภาพที่แย่พร้อมอินพุตที่ใหญ่พอ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.