ฉันกำลังดิ้นรนเพื่อเลือกคอลัมน์เฉพาะต่อแถวของเมทริกซ์ NumPy
สมมติว่าฉันมีเมทริกซ์ต่อไปนี้ซึ่งฉันจะเรียกX
:
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
ฉันยังมีlist
ดัชนีคอลัมน์ต่อทุกแถวที่ฉันจะเรียกY
:
[1, 0, 2]
ฉันต้องการรับค่า:
[2]
[4]
[9]
แทนที่จะใช้list
ดัชนีY
ฉันยังสามารถสร้างเมทริกซ์ที่มีรูปร่างเหมือนกับX
โดยที่ทุกคอลัมน์เป็นbool
/ int
ในค่าช่วง 0-1 ซึ่งระบุว่านี่เป็นคอลัมน์ที่ต้องการหรือไม่
[0, 1, 0]
[1, 0, 0]
[0, 0, 1]
ฉันรู้ว่าสิ่งนี้สามารถทำได้ด้วยการวนซ้ำอาร์เรย์และเลือกค่าคอลัมน์ที่ฉันต้องการ อย่างไรก็ตามสิ่งนี้จะถูกเรียกใช้บ่อยในอาร์เรย์ข้อมูลขนาดใหญ่และนั่นคือเหตุผลที่ต้องทำงานให้เร็วที่สุดเท่าที่จะทำได้
ฉันจึงสงสัยว่ามีทางออกที่ดีกว่านี้หรือไม่?