ฉันเพิ่งใช้โซลูชันนี้เพื่อหาค่าเฉลี่ยทุกๆ N แถวของเมทริกซ์ แม้ว่าโซลูชันจะใช้งานได้โดยทั่วไปฉันมีปัญหาเมื่อใช้กับอาร์เรย์ 7x1 ฉันสังเกตเห็นว่าปัญหาคือเมื่อใช้ตัว-=
ดำเนินการ เพื่อเป็นตัวอย่างเล็ก ๆ :
import numpy as np
a = np.array([1,2,3])
b = np.copy(a)
a[1:] -= a[:-1]
b[1:] = b[1:] - b[:-1]
print a
print b
ซึ่งผลลัพธ์:
[1 1 2]
[1 1 1]
ดังนั้นในกรณีของอาร์เรย์a -= b
จะให้ผลลัพธ์ที่แตกต่างจากa = a - b
. ฉันคิดจนถึงตอนนี้ว่าสองวิธีนี้เหมือนกันทุกประการ อะไรคือความแตกต่าง?
วิธีการที่ฉันพูดถึงสำหรับการรวมทุก N แถวในเมทริกซ์นั้นใช้งานได้อย่างไรสำหรับเมทริกซ์ 7x4 แต่ไม่ใช่สำหรับอาร์เรย์ 7x1