6
我想知道如果下面的方法會被認爲是不好的做法,如果是這樣,如果有人能夠給對另一種方法的指導。列表理解與numpy的陣列 - 不好的做法?
這裏是有問題的代碼:
a = np.array([[1,2,3],[4,5,6]])
b = np.array([-5,5])
c = np.array([np.multiply(a[x],b[x]) for x in range(2)])
這裏的目的是爲了獲得相同形狀的陣列作爲「A」,其中在所述第一元件中的值「A」是由第一相乘'b'的元素和'a'的第二個元素的值乘以'b'的第二個元素
上面的代碼有效,但考慮到涉及的列表/數組的混合,我擔心這是不建議 - 但我不清楚更優雅的解決方案。提前謝謝了!
這非常有幫助,謝謝!我必須更好地理解「新軸」概念。 B [:無] .shape仍舊代表一維數組,而不是2,所以我不一定會想到這已經奏效...... – laszlopanaflex
'B [:無]'和'B [很大的不同:,無]'。逗號很重要。第一個是一個切片,切片'(無,無,無)'的一部分。二是通過'numpy'理解爲這個特殊的'newaxis'意義。 – hpaulj