Julia的map
和理解語法可以很容易地映射多維數組的所有元素。地圖片
是否有類似的支持映射切片的數組?
作爲一個愚蠢的例子,給定一個3x3x100矩陣,我可能想要映射所有100個3x3x_切片。比方說,我可以推導出每個3x3切片的決定因素,並最終得到1x1x100的決定因素陣列。
Julia的map
和理解語法可以很容易地映射多維數組的所有元素。地圖片
是否有類似的支持映射切片的數組?
作爲一個愚蠢的例子,給定一個3x3x100矩陣,我可能想要映射所有100個3x3x_切片。比方說,我可以推導出每個3x3切片的決定因素,並最終得到1x1x100的決定因素陣列。
看看mapslices
。對於這個問題,建議使用size(A)==(3,3,100)
。計算3×3矩陣的100行列式可以使用:mapslices(det,A,(1,2))
。
注意生成的矩陣仍然是3維的,並且squeeze
可以用於擺脫1維的尺寸。在這個例子中:
squeeze(mapslices(det,A,(1,2)),(1,2))
'squeeze'很棒 - 如果擠壓後的尺寸沒有尺寸1,它會(非常好)錯誤。如果'mapslice'有一種方法可以指示尺寸也應該是sqeezed,那麼它會更加超級緊湊......但是這非常容易構建。 – Benjohn
看看'mapslices'。就你的例子而言,size(A)==(3,3,100)',然後像'mapslices(det,A,(1,2))'就可以。 –
這就是我所追求的,謝謝。你想讓它接受答案嗎?否則我可以。 – Benjohn